Bug 1332853 - Dashbuilder does not work with Sybase 15.7 with default setting (ALLOW_NULLS_BY_DEFAULT=False)
Summary: Dashbuilder does not work with Sybase 15.7 with default setting (ALLOW_NULLS_...
Keywords:
Status: CLOSED EOL
Alias: None
Product: JBoss BPMS Platform 6
Classification: Retired
Component: BAM
Version: 6.3.0
Hardware: Unspecified
OS: Unspecified
unspecified
medium
Target Milestone: ---
: ---
Assignee: David Gutierrez
QA Contact: Gui Jospin
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2016-05-04 08:39 UTC by Jan Hrcek
Modified: 2020-03-27 20:09 UTC (History)
0 users

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2020-03-27 20:09:19 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)
server.log with exceptions (309.82 KB, text/plain)
2016-05-04 08:39 UTC, Jan Hrcek
no flags Details
Differences in how tables are created with / without the setting (340.50 KB, image/png)
2016-05-04 08:44 UTC, Jan Hrcek
no flags Details

Description Jan Hrcek 2016-05-04 08:39:07 UTC
Created attachment 1153744 [details]
server.log with exceptions

Description of problem:
All (old) dashbuilder tests are failing on Central CI with Sybase 15.7 (we've got fresh installation of Sybase there). After logging in there is HTTP 404 and server.log (attached) is full of exceptions like:
"java.sql.SQLException: The column status in table dashb_graphic_resource does not allow null values."

It turns out there is a particular setting for Sybase database:
ALLOW_NULLS_BY_DEFAULT, which is set to FALSE for some distributions of sybase.
This leads to tables being created with most columns having NOT NULL constraint, causing the failures.

The Sybase documentation [1][2] states: "By default, columns in Adaptive Server Enterprise default to NOT NULL, whereas in Sybase IQ the default setting is NULL, to allow NULL values. This setting can be controlled using the ALLOW_NULLS_BY_DEFAULT option"

We already requested this setting to be changed, but there are two things we can do to prevent this happening to customers:

1) Change the 1-create-sybase.sql [3] script to explicitly declare columns to be nullable (instead of relying on the default which depends on global DB settings)

2) Document this issue. Possible DOC text:
This only concerns people using Sybase database as their DB backend. Some distributions of Sybase database can have setting ALLOW_NULLS_BY_DEFAULT set to False by default. To avoid issues with dashbuilder, this setting needs to be set to True.


Version-Release number of selected component (if applicable):
BPM Suite 6.3.0 GA

How reproducible:
Always

Steps to Reproduce:
1. Configure business-central + dashbuilder to use Sybase 15.7
2. try logging int the old dashbuilder

Actual results:
404 page is shown, exceptions in server.log

Expected results:
Dashbuilder home page displayed successfully.

Additional info:
[1] http://infocenter.sybase.com/help/index.jsp?topic=/com.sybase.infocenter.dc00801.1510/html/iqrefso/X315712.htm  ---> Ctrl+F for ALLOW_NULLS_BY_DEFAULT
[2] http://infocenter.sybase.com/help/index.jsp?topic=/com.sybase.infocenter.dc32300.1570/html/sqlug/X98883.htm
[3] https://github.com/droolsjbpm/dashboard-builder/blob/master/modules/dashboard-webapp/src/main/webapp/WEB-INF/etc/sql/1-create-sybase.sql

Comment 2 Jan Hrcek 2016-05-04 08:44:32 UTC
Created attachment 1153746 [details]
Differences in how tables are created with / without the setting


Note You need to log in before you can comment on or make changes to this bug.