Note: This bug is displayed in read-only format because the product is no longer active in Red Hat Bugzilla.

Bug 1332853

Summary: Dashbuilder does not work with Sybase 15.7 with default setting (ALLOW_NULLS_BY_DEFAULT=False)
Product: [Retired] JBoss BPMS Platform 6 Reporter: Jan Hrcek <jhrcek>
Component: BAMAssignee: David Gutierrez <dgutierr>
Status: CLOSED EOL QA Contact: Gui Jospin <gjospin>
Severity: medium Docs Contact:
Priority: unspecified    
Version: 6.3.0   
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2020-03-27 20:09:19 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
server.log with exceptions
none
Differences in how tables are created with / without the setting none

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