Hi Isomorphic,
please see this log and watch the growing amount of "DEBUG SQLTransaction - Committing HSQLDB transaction "1939247906"" per add statement.
While where is 4x this line (also 3 too much, if this is really 4 JDBC-commit() and not just log output) in the beginning, it becomes 4 more per additional row.
For me, this results in a huge delay (0.5 seconds *per row*/for the last row) when there are many rows in the csv-file.
My issues here are:
Important change from "normal" BU is the code in EmployeesUpload.java.
The change is there in order not to have long lasting object locks (table, index) and not much undo information in the DB.
Testcase and server log for "Commit"-click in BatchUploader ("Upload" not included):
Server log output:
BuiltInDS.java:
employeesUpload.ds.xml:
EmployeesUpload.java:
BuiltInDS.html change:
TestdataImportEmployees.csv:
Best regards
Blama
please see this log and watch the growing amount of "DEBUG SQLTransaction - Committing HSQLDB transaction "1939247906"" per add statement.
While where is 4x this line (also 3 too much, if this is really 4 JDBC-commit() and not just log output) in the beginning, it becomes 4 more per additional row.
For me, this results in a huge delay (0.5 seconds *per row*/for the last row) when there are many rows in the csv-file.
My issues here are:
- The linear growth of commits for every row
- The 4 commit for the 1st row (if it really is this way)
Important change from "normal" BU is the code in EmployeesUpload.java.
The change is there in order not to have long lasting object locks (table, index) and not much undo information in the DB.
Testcase and server log for "Commit"-click in BatchUploader ("Upload" not included):
Server log output:
Code:
=== 2019-07-01 15:55:05,838 [2-32] INFO RequestContext - URL: '/builtinds/sc/IDACall', User-Agent: 'Mozilla/5.0 (Windows NT 6.3; WOW64; rv:26.0) Gecko/20100101 Firefox/26.0': Moz (Gecko) with Accept-Encoding header === 2019-07-01 15:55:05,841 [2-32] DEBUG XML - Parsed XML from (in memory stream): 2ms === 2019-07-01 15:55:05,848 [2-32] DEBUG RPCManager - Processing 4 requests. === 2019-07-01 15:55:05,851 [2-32] DEBUG SQLDataSource - About to clear SQLDriver state for DS instance 100 === 2019-07-01 15:55:05,851 [2-32] DEBUG SQLDataSource - About to clear SQLDriver state for DS instance 96 === 2019-07-01 15:55:05,851 [2-32] DEBUG SQLDataSource - About to clear SQLDriver state for DS instance 38 === 2019-07-01 15:55:05,851 [2-32] DEBUG SQLDataSource - About to clear SQLDriver state for DS instance 50 === 2019-07-01 15:55:05,851 [2-32] DEBUG ProcessedFileCache - STALE object for file 'C:\Users\ST\workspace\lib\smartgwtpower-12.0p\samples\built-in-ds\war\ds\employeesUpload.ds.xml', reloading (file timestamp 1561989289028, cache timestamp 1561988695822) === 2019-07-01 15:55:05,853 [2-32] DEBUG XML - Parsed XML from C:\Users\ST\workspace\lib\smartgwtpower-12.0p\samples\built-in-ds\war\ds\employeesUpload.ds.xml: 1ms === 2019-07-01 15:55:05,864 [2-32] DEBUG RPCManager - Request #1 (DSRequest) payload: { values:{ ReportsTo:4, Gender:"female", EmployeeId:1000, ReportsToName:"Charles Madigen", Name:"Anna Sun" }, operationConfig:{ dataSource:"employeesUpload", repo:null, operationType:"add", textMatchStyle:"exact" }, appID:"builtinApplication", operation:"employeesUpload_add", oldValues:{ ReportsTo:4, Gender:"female", EmployeeId:1000, ReportsToName:"Charles Madigen", Name:"Anna Sun" }, criteria:{ } } === 2019-07-01 15:55:05,865 [2-32] DEBUG RPCManager - Request #2 (DSRequest) payload: { values:{ ReportsTo:182, Gender:"male", EmployeeId:1001, ReportsToName:"Tamara Kane", Name:"Mike Sun" }, operationConfig:{ dataSource:"employeesUpload", repo:null, operationType:"add", textMatchStyle:"exact" }, appID:"builtinApplication", operation:"employeesUpload_add", oldValues:{ ReportsTo:182, Gender:"male", EmployeeId:1001, ReportsToName:"Tamara Kane", Name:"Mike Sun" }, criteria:{ } } === 2019-07-01 15:55:05,865 [2-32] DEBUG RPCManager - Request #3 (DSRequest) payload: { values:{ ReportsTo:182, Gender:"male", EmployeeId:1002, ReportsToName:"Tamara Kane", Name:"Jeff Doe" }, operationConfig:{ dataSource:"employeesUpload", repo:null, operationType:"add", textMatchStyle:"exact" }, appID:"builtinApplication", operation:"employeesUpload_add", oldValues:{ ReportsTo:182, Gender:"male", EmployeeId:1002, ReportsToName:"Tamara Kane", Name:"Jeff Doe" }, criteria:{ } } === 2019-07-01 15:55:05,865 [2-32] DEBUG RPCManager - Request #4 (DSRequest) payload: { values:{ ReportsTo:182, Gender:"male", EmployeeId:1003, ReportsToName:"Tamara Kane", Name:"John Doe" }, operationConfig:{ dataSource:"employeesUpload", repo:null, operationType:"add", textMatchStyle:"exact" }, appID:"builtinApplication", operation:"employeesUpload_add", oldValues:{ ReportsTo:182, Gender:"male", EmployeeId:1003, ReportsToName:"Tamara Kane", Name:"John Doe" }, criteria:{ } } === 2019-07-01 15:55:05,865 [2-32] INFO IDACall - Performing 4 operation(s) === 2019-07-01 15:55:05,865 [2-32] DEBUG DeclarativeSecurity - Processing security checks for DataSource null, field null === 2019-07-01 15:55:05,865 [2-32] DEBUG DeclarativeSecurity - DataSource employeesUpload is not in the pre-checked list, processing... === 2019-07-01 15:55:05,866 [2-32] DEBUG DeclarativeSecurity - Processing security checks for DataSource null, field null === 2019-07-01 15:55:05,866 [2-32] DEBUG DeclarativeSecurity - Request is not a client request, ignoring security checks. === 2019-07-01 15:55:05,866 [2-32] DEBUG AppBase - [builtinApplication.null] No userTypes defined, allowing anyone access to all operations for this application === 2019-07-01 15:55:05,866 [2-32] DEBUG AppBase - [builtinApplication.null] No public zero-argument method named '_null' found, performing generic datasource operation === 2019-07-01 15:55:05,867 [2-32] INFO SQLDataSource - [builtinApplication.null] Performing fetch operation with criteria: {EmployeeId:4} values: {EmployeeId:4} === 2019-07-01 15:55:05,867 [2-32] INFO SQLDataSource - [builtinApplication.null] derived query: SELECT $defaultSelectClause FROM $defaultTableClause WHERE $defaultWhereClause === 2019-07-01 15:55:05,867 [2-32] INFO SQLDataSource - [builtinApplication.null] 83: Executing SQL query on 'HSQLDB': SELECT employeeTable.userOrder, employeeTable.Name, employeeTable.EmployeeId, employeeTable.ReportsTo, employeeTable.Job, employeeTable.Email, employeeTable.EmployeeType, employeeTable.EmployeeStatus, employeeTable.Salary, employeeTable.OrgUnit, employeeTable.Gender, employeeTable.MaritalStatus FROM employeeTable WHERE (employeeTable.EmployeeId=4) === 2019-07-01 15:55:05,868 [2-32] DEBUG SQLConnectionManager - [builtinApplication.null] Borrowed connection '1723282589' === 2019-07-01 15:55:05,868 [2-32] INFO SQLDriver - [builtinApplication.null] Executing SQL query on 'HSQLDB' using connection '1723282589': SELECT employeeTable.userOrder, employeeTable.Name, employeeTable.EmployeeId, employeeTable.ReportsTo, employeeTable.Job, employeeTable.Email, employeeTable.EmployeeType, employeeTable.EmployeeStatus, employeeTable.Salary, employeeTable.OrgUnit, employeeTable.Gender, employeeTable.MaritalStatus FROM employeeTable WHERE (employeeTable.EmployeeId=4) === 2019-07-01 15:55:05,868 [2-32] INFO DSResponse - DSResponse: List with 1 items === 2019-07-01 15:55:05,869 [2-32] DEBUG DeclarativeSecurity - Processing security checks for DataSource null, field null === 2019-07-01 15:55:05,869 [2-32] DEBUG DeclarativeSecurity - Request is not a client request, ignoring security checks. === 2019-07-01 15:55:05,869 [2-32] DEBUG ServerObject - Couldn't find a public method named: fetch on class: com.smartgwt.sample.server.listener.EmployeesUpload === 2019-07-01 15:55:05,869 [2-32] DEBUG DataSourceDMI - DataSourceDMI: no public method name: fetch available on class: com.smartgwt.sample.server.listener.EmployeesUpload - defaulting to builtin operations. === 2019-07-01 15:55:05,869 [2-32] DEBUG AppBase - [builtinApplication.null] No userTypes defined, allowing anyone access to all operations for this application === 2019-07-01 15:55:05,869 [2-32] DEBUG AppBase - [builtinApplication.null] No public zero-argument method named '_null' found, performing generic datasource operation === 2019-07-01 15:55:05,869 [2-32] INFO SQLDataSource - [builtinApplication.null] Performing fetch operation with outputs: [EmployeeId, Name] criteria: {Name:"Anna Sun"} values: {Name:"Anna Sun"} === 2019-07-01 15:55:05,870 [2-32] DEBUG SQLDataSource - [builtinApplication.null] DataSource 113 acquired SQLDriver instance 1503672471 during initialization === 2019-07-01 15:55:05,870 [2-32] INFO SQLDataSource - [builtinApplication.null] derived query: SELECT $defaultSelectClause FROM $defaultTableClause WHERE $defaultWhereClause === 2019-07-01 15:55:05,871 [2-32] INFO SQLDataSource - [builtinApplication.null] 113: Executing SQL query on 'HSQLDB': SELECT employeeTable.EmployeeId, employeeTable.Name FROM employeeTable WHERE (employeeTable.Name='Anna Sun') === 2019-07-01 15:55:05,871 [2-32] DEBUG SQLConnectionManager - [builtinApplication.null] Borrowed connection '147239089' === 2019-07-01 15:55:05,871 [2-32] INFO SQLDriver - [builtinApplication.null] Executing SQL query on 'HSQLDB' using connection '147239089': SELECT employeeTable.EmployeeId, employeeTable.Name FROM employeeTable WHERE (employeeTable.Name='Anna Sun') === 2019-07-01 15:55:05,872 [2-32] INFO DSResponse - DSResponse: List with 0 items === 2019-07-01 15:55:10,660 [2-32] DEBUG DeclarativeSecurity - Processing security checks for DataSource null, field null === 2019-07-01 15:55:10,660 [2-32] DEBUG DeclarativeSecurity - DataSource employeesUpload is not in the pre-checked list, processing... === 2019-07-01 15:55:10,660 [2-32] DEBUG AppBase - [builtinApplication.employeesUpload_add] No userTypes defined, allowing anyone access to all operations for this application === 2019-07-01 15:55:10,660 [2-32] DEBUG AppBase - [builtinApplication.employeesUpload_add] No public zero-argument method named '_employeesUpload_add' found, performing generic datasource operation === 2019-07-01 15:55:10,660 [2-32] INFO SQLDataSource - [builtinApplication.employeesUpload_add] Performing add operation with criteria: {ReportsTo:4,Gender:"female",EmployeeId:1000,ReportsToName:"Charles Madigen",Name:"Anna Sun"} values: {ReportsTo:4,Gender:"female",EmployeeId:1000,ReportsToName:"Charles Madigen",Name:"Anna Sun"} === 2019-07-01 15:55:10,661 [2-32] INFO SQLValuesClause - [builtinApplication.employeesUpload_add] Ignored data for non-existent or included columns: [ReportsToName] === 2019-07-01 15:55:10,661 [2-32] DEBUG SQLValuesClause - [builtinApplication.employeesUpload_add] Sequences: {} === 2019-07-01 15:55:10,661 [2-32] DEBUG SQLConnectionManager - [builtinApplication.employeesUpload_add] Borrowed connection '1939247906' === 2019-07-01 15:55:10,661 [2-32] DEBUG SQLTransaction - [builtinApplication.employeesUpload_add] Started new HSQLDB transaction "1939247906" === 2019-07-01 15:55:10,661 [2-32] DEBUG SQLDataSource - [builtinApplication.employeesUpload_add] Setting DSRequest as being part of a transaction === 2019-07-01 15:55:10,661 [2-32] INFO SQLDriver - [builtinApplication.employeesUpload_add] Executing SQL query on 'HSQLDB' using connection '1939247906': INSERT INTO employeeTable (EmployeeId, Gender, Name, ReportsTo) VALUES (1000, 'female', 'Anna Sun', 4) === 2019-07-01 15:55:10,664 [2-32] DEBUG SQLDriver - [builtinApplication.employeesUpload_add] SequenceMode is not JDBC_DRIVER, skipping search for generated values === 2019-07-01 15:55:10,665 [2-32] INFO SQLDataSource - [builtinApplication.employeesUpload_add] primaryKeys: {EmployeeId=1000} === 2019-07-01 15:55:10,665 [2-32] DEBUG SQLDataSource - [builtinApplication.employeesUpload_add] Gathered all keys. lastPrimaryKeys is now {EmployeeId=1000} === 2019-07-01 15:55:10,665 [2-32] DEBUG SQLDataSource - [builtinApplication.employeesUpload_add] add operation affected 1 rows === 2019-07-01 15:55:10,665 [2-32] DEBUG DeclarativeSecurity - [builtinApplication.employeesUpload_add] Processing security checks for DataSource null, field null === 2019-07-01 15:55:10,665 [2-32] DEBUG DeclarativeSecurity - [builtinApplication.employeesUpload_add] DataSource employeesUpload is not in the pre-checked list, processing... === 2019-07-01 15:55:10,665 [2-32] DEBUG DeclarativeSecurity - [builtinApplication.employeesUpload_add] Processing security checks for DataSource employees, field EmployeeId === 2019-07-01 15:55:10,665 [2-32] DEBUG DeclarativeSecurity - [builtinApplication.employeesUpload_add] DataSource employees is not in the pre-checked list, processing... === 2019-07-01 15:55:10,665 [2-32] DEBUG DeclarativeSecurity - [builtinApplication.employeesUpload_add] Processing security checks for DataSource employees, field Name === 2019-07-01 15:55:10,665 [2-32] DEBUG DeclarativeSecurity - [builtinApplication.employeesUpload_add] DataSource employees is not in the pre-checked list, processing... === 2019-07-01 15:55:10,665 [2-32] DEBUG ServerObject - [builtinApplication.employeesUpload_add] Couldn't find a public method named: fetch on class: com.smartgwt.sample.server.listener.EmployeesUpload === 2019-07-01 15:55:10,665 [2-32] DEBUG DataSourceDMI - [builtinApplication.employeesUpload_add] DataSourceDMI: no public method name: fetch available on class: com.smartgwt.sample.server.listener.EmployeesUpload - defaulting to builtin operations. === 2019-07-01 15:55:10,665 [2-32] DEBUG AppBase - [builtinApplication.employeesUpload_add, builtinApplication.null] No userTypes defined, allowing anyone access to all operations for this application === 2019-07-01 15:55:10,665 [2-32] DEBUG AppBase - [builtinApplication.employeesUpload_add, builtinApplication.null] No public zero-argument method named '_null' found, performing generic datasource operation === 2019-07-01 15:55:10,665 [2-32] INFO SQLDataSource - [builtinApplication.employeesUpload_add, builtinApplication.null] Performing fetch operation with criteria: {EmployeeId:1000} values: {EmployeeId:1000} === 2019-07-01 15:55:10,667 [2-32] INFO SQLDataSource - [builtinApplication.employeesUpload_add, builtinApplication.null] derived query: SELECT $defaultSelectClause FROM $defaultTableClause$defaultAnsiJoinClause WHERE $defaultWhereClause === 2019-07-01 15:55:10,668 [2-32] DEBUG SQLDataSource - [builtinApplication.employeesUpload_add, builtinApplication.null] Using SQL Limit query === 2019-07-01 15:55:10,668 [2-32] DEBUG SQLDataSource - [builtinApplication.employeesUpload_add, builtinApplication.null] SQL windowed select rows 0->-1, result size 1. Query: SELECT LIMIT 0 1 employeeTable.EmployeeId, employeeTable.Name, employeeTable.ReportsTo, employeeTable.Gender, relatedReportsTo.Name AS ReportsToName FROM employeeTable JOIN employeeTable relatedReportsTo ON employeeTable.ReportsTo = relatedReportsTo.EmployeeId WHERE (employeeTable.EmployeeId=1000) === 2019-07-01 15:55:10,668 [2-32] DEBUG SQLDataSource - [builtinApplication.employeesUpload_add, builtinApplication.null] SQL windowed select rows 0->-1, result size 1. Query: SELECT LIMIT 0 1 employeeTable.EmployeeId, employeeTable.Name, employeeTable.ReportsTo, employeeTable.Gender, relatedReportsTo.Name AS ReportsToName FROM employeeTable JOIN employeeTable relatedReportsTo ON employeeTable.ReportsTo = relatedReportsTo.EmployeeId WHERE (employeeTable.EmployeeId=1000) === 2019-07-01 15:55:10,668 [2-32] DEBUG SQLDataSource - [builtinApplication.employeesUpload_add, builtinApplication.null] Setting DSRequest as being part of a transaction === 2019-07-01 15:55:10,668 [2-32] INFO SQLDataSource - [builtinApplication.employeesUpload_add, builtinApplication.null] 113: Executing cache sync query on 'HSQLDB': SELECT LIMIT 0 1 employeeTable.EmployeeId, employeeTable.Name, employeeTable.ReportsTo, employeeTable.Gender, relatedReportsTo.Name AS ReportsToName FROM employeeTable JOIN employeeTable relatedReportsTo ON employeeTable.ReportsTo = relatedReportsTo.EmployeeId WHERE (employeeTable.EmployeeId=1000) === 2019-07-01 15:55:10,670 [2-32] INFO DSResponse - [builtinApplication.employeesUpload_add] DSResponse: List with 1 items === 2019-07-01 15:55:10,670 [2-32] INFO DSResponse - DSResponse: List with 1 items [B]=== 2019-07-01 15:55:10,670 [2-32] DEBUG SQLTransaction - Committing HSQLDB transaction "1939247906" === 2019-07-01 15:55:10,671 [2-32] DEBUG SQLTransaction - Committing HSQLDB transaction "1939247906" === 2019-07-01 15:55:10,671 [2-32] DEBUG SQLTransaction - Committing HSQLDB transaction "1939247906" === 2019-07-01 15:55:10,671 [2-32] DEBUG SQLTransaction - Committing HSQLDB transaction "1939247906"[/B] === 2019-07-01 15:55:10,671 [2-32] INFO DSResponse - DSResponse: List with 1 items === 2019-07-01 15:55:10,671 [2-32] DEBUG DeclarativeSecurity - Processing security checks for DataSource null, field null === 2019-07-01 15:55:10,671 [2-32] DEBUG DeclarativeSecurity - DataSource employeesUpload is not in the pre-checked list, processing... === 2019-07-01 15:55:10,672 [2-32] DEBUG DeclarativeSecurity - Processing security checks for DataSource null, field null === 2019-07-01 15:55:10,672 [2-32] DEBUG DeclarativeSecurity - Request is not a client request, ignoring security checks. === 2019-07-01 15:55:10,672 [2-32] DEBUG AppBase - [builtinApplication.null] No userTypes defined, allowing anyone access to all operations for this application === 2019-07-01 15:55:10,672 [2-32] DEBUG AppBase - [builtinApplication.null] No public zero-argument method named '_null' found, performing generic datasource operation === 2019-07-01 15:55:10,672 [2-32] INFO SQLDataSource - [builtinApplication.null] Performing fetch operation with criteria: {EmployeeId:182} values: {EmployeeId:182} === 2019-07-01 15:55:10,673 [2-32] INFO SQLDataSource - [builtinApplication.null] derived query: SELECT $defaultSelectClause FROM $defaultTableClause WHERE $defaultWhereClause === 2019-07-01 15:55:10,673 [2-32] INFO SQLDataSource - [builtinApplication.null] 99: Executing SQL query on 'HSQLDB': SELECT employeeTable.userOrder, employeeTable.Name, employeeTable.EmployeeId, employeeTable.ReportsTo, employeeTable.Job, employeeTable.Email, employeeTable.EmployeeType, employeeTable.EmployeeStatus, employeeTable.Salary, employeeTable.OrgUnit, employeeTable.Gender, employeeTable.MaritalStatus FROM employeeTable WHERE (employeeTable.EmployeeId=182) === 2019-07-01 15:55:10,673 [2-32] DEBUG SQLDataSource - [builtinApplication.null] Setting DSRequest as being part of a transaction === 2019-07-01 15:55:10,673 [2-32] INFO SQLDriver - [builtinApplication.null] Executing SQL query on 'HSQLDB' using connection '1939247906': SELECT employeeTable.userOrder, employeeTable.Name, employeeTable.EmployeeId, employeeTable.ReportsTo, employeeTable.Job, employeeTable.Email, employeeTable.EmployeeType, employeeTable.EmployeeStatus, employeeTable.Salary, employeeTable.OrgUnit, employeeTable.Gender, employeeTable.MaritalStatus FROM employeeTable WHERE (employeeTable.EmployeeId=182) === 2019-07-01 15:55:10,674 [2-32] INFO DSResponse - DSResponse: List with 1 items === 2019-07-01 15:55:10,674 [2-32] DEBUG DeclarativeSecurity - Processing security checks for DataSource null, field null === 2019-07-01 15:55:10,674 [2-32] DEBUG DeclarativeSecurity - Request is not a client request, ignoring security checks. === 2019-07-01 15:55:10,674 [2-32] DEBUG ServerObject - Couldn't find a public method named: fetch on class: com.smartgwt.sample.server.listener.EmployeesUpload === 2019-07-01 15:55:10,674 [2-32] DEBUG DataSourceDMI - DataSourceDMI: no public method name: fetch available on class: com.smartgwt.sample.server.listener.EmployeesUpload - defaulting to builtin operations. === 2019-07-01 15:55:10,674 [2-32] DEBUG AppBase - [builtinApplication.null] No userTypes defined, allowing anyone access to all operations for this application === 2019-07-01 15:55:10,674 [2-32] DEBUG AppBase - [builtinApplication.null] No public zero-argument method named '_null' found, performing generic datasource operation === 2019-07-01 15:55:10,674 [2-32] INFO SQLDataSource - [builtinApplication.null] Performing fetch operation with outputs: [EmployeeId, Name] criteria: {Name:"Mike Sun"} values: {Name:"Mike Sun"} === 2019-07-01 15:55:10,675 [2-32] INFO SQLDataSource - [builtinApplication.null] derived query: SELECT $defaultSelectClause FROM $defaultTableClause WHERE $defaultWhereClause === 2019-07-01 15:55:10,675 [2-32] INFO SQLDataSource - [builtinApplication.null] 113: Executing SQL query on 'HSQLDB': SELECT employeeTable.EmployeeId, employeeTable.Name FROM employeeTable WHERE (employeeTable.Name='Mike Sun') === 2019-07-01 15:55:10,675 [2-32] DEBUG SQLDataSource - [builtinApplication.null] Setting DSRequest as being part of a transaction === 2019-07-01 15:55:10,675 [2-32] INFO SQLDriver - [builtinApplication.null] Executing SQL query on 'HSQLDB' using connection '1939247906': SELECT employeeTable.EmployeeId, employeeTable.Name FROM employeeTable WHERE (employeeTable.Name='Mike Sun') === 2019-07-01 15:55:10,676 [2-32] INFO DSResponse - DSResponse: List with 0 items === 2019-07-01 15:55:16,236 [2-32] DEBUG DeclarativeSecurity - Processing security checks for DataSource null, field null === 2019-07-01 15:55:16,236 [2-32] DEBUG DeclarativeSecurity - DataSource employeesUpload is not in the pre-checked list, processing... === 2019-07-01 15:55:16,236 [2-32] DEBUG AppBase - [builtinApplication.employeesUpload_add] No userTypes defined, allowing anyone access to all operations for this application === 2019-07-01 15:55:16,236 [2-32] DEBUG AppBase - [builtinApplication.employeesUpload_add] No public zero-argument method named '_employeesUpload_add' found, performing generic datasource operation === 2019-07-01 15:55:16,236 [2-32] INFO SQLDataSource - [builtinApplication.employeesUpload_add] Performing add operation with criteria: {ReportsTo:182,Gender:"male",EmployeeId:1001,ReportsToName:"Tamara Kane",Name:"Mike Sun"} values: {ReportsTo:182,Gender:"male",EmployeeId:1001,ReportsToName:"Tamara Kane",Name:"Mike Sun"} === 2019-07-01 15:55:16,236 [2-32] INFO SQLValuesClause - [builtinApplication.employeesUpload_add] Ignored data for non-existent or included columns: [ReportsToName] === 2019-07-01 15:55:16,236 [2-32] DEBUG SQLValuesClause - [builtinApplication.employeesUpload_add] Sequences: {} === 2019-07-01 15:55:16,237 [2-32] DEBUG SQLDataSource - [builtinApplication.employeesUpload_add] Setting DSRequest as being part of a transaction === 2019-07-01 15:55:16,237 [2-32] INFO SQLDriver - [builtinApplication.employeesUpload_add] Executing SQL query on 'HSQLDB' using connection '1939247906': INSERT INTO employeeTable (EmployeeId, Gender, Name, ReportsTo) VALUES (1001, 'male', 'Mike Sun', 182) === 2019-07-01 15:55:16,237 [2-32] DEBUG SQLDriver - [builtinApplication.employeesUpload_add] SequenceMode is not JDBC_DRIVER, skipping search for generated values === 2019-07-01 15:55:16,237 [2-32] INFO SQLDataSource - [builtinApplication.employeesUpload_add] primaryKeys: {EmployeeId=1001} === 2019-07-01 15:55:16,237 [2-32] DEBUG SQLDataSource - [builtinApplication.employeesUpload_add] Gathered all keys. lastPrimaryKeys is now {EmployeeId=1001} === 2019-07-01 15:55:16,237 [2-32] DEBUG SQLDataSource - [builtinApplication.employeesUpload_add] add operation affected 1 rows === 2019-07-01 15:55:16,237 [2-32] DEBUG DeclarativeSecurity - [builtinApplication.employeesUpload_add] Processing security checks for DataSource null, field null === 2019-07-01 15:55:16,237 [2-32] DEBUG DeclarativeSecurity - [builtinApplication.employeesUpload_add] DataSource employeesUpload is not in the pre-checked list, processing... === 2019-07-01 15:55:16,237 [2-32] DEBUG DeclarativeSecurity - [builtinApplication.employeesUpload_add] Processing security checks for DataSource employees, field EmployeeId === 2019-07-01 15:55:16,237 [2-32] DEBUG DeclarativeSecurity - [builtinApplication.employeesUpload_add] DataSource employees is not in the pre-checked list, processing... === 2019-07-01 15:55:16,237 [2-32] DEBUG DeclarativeSecurity - [builtinApplication.employeesUpload_add] Processing security checks for DataSource employees, field Name === 2019-07-01 15:55:16,237 [2-32] DEBUG DeclarativeSecurity - [builtinApplication.employeesUpload_add] DataSource employees is not in the pre-checked list, processing... === 2019-07-01 15:55:16,238 [2-32] DEBUG ServerObject - [builtinApplication.employeesUpload_add] Couldn't find a public method named: fetch on class: com.smartgwt.sample.server.listener.EmployeesUpload === 2019-07-01 15:55:16,238 [2-32] DEBUG DataSourceDMI - [builtinApplication.employeesUpload_add] DataSourceDMI: no public method name: fetch available on class: com.smartgwt.sample.server.listener.EmployeesUpload - defaulting to builtin operations. === 2019-07-01 15:55:16,238 [2-32] DEBUG AppBase - [builtinApplication.employeesUpload_add, builtinApplication.null] No userTypes defined, allowing anyone access to all operations for this application === 2019-07-01 15:55:16,238 [2-32] DEBUG AppBase - [builtinApplication.employeesUpload_add, builtinApplication.null] No public zero-argument method named '_null' found, performing generic datasource operation === 2019-07-01 15:55:16,238 [2-32] INFO SQLDataSource - [builtinApplication.employeesUpload_add, builtinApplication.null] Performing fetch operation with criteria: {EmployeeId:1001} values: {EmployeeId:1001} === 2019-07-01 15:55:16,238 [2-32] INFO SQLDataSource - [builtinApplication.employeesUpload_add, builtinApplication.null] derived query: SELECT $defaultSelectClause FROM $defaultTableClause$defaultAnsiJoinClause WHERE $defaultWhereClause === 2019-07-01 15:55:16,239 [2-32] DEBUG SQLDataSource - [builtinApplication.employeesUpload_add, builtinApplication.null] Using SQL Limit query === 2019-07-01 15:55:16,239 [2-32] DEBUG SQLDataSource - [builtinApplication.employeesUpload_add, builtinApplication.null] SQL windowed select rows 0->-1, result size 1. Query: SELECT LIMIT 0 1 employeeTable.EmployeeId, employeeTable.Name, employeeTable.ReportsTo, employeeTable.Gender, relatedReportsTo.Name AS ReportsToName FROM employeeTable JOIN employeeTable relatedReportsTo ON employeeTable.ReportsTo = relatedReportsTo.EmployeeId WHERE (employeeTable.EmployeeId=1001) === 2019-07-01 15:55:16,239 [2-32] DEBUG SQLDataSource - [builtinApplication.employeesUpload_add, builtinApplication.null] SQL windowed select rows 0->-1, result size 1. Query: SELECT LIMIT 0 1 employeeTable.EmployeeId, employeeTable.Name, employeeTable.ReportsTo, employeeTable.Gender, relatedReportsTo.Name AS ReportsToName FROM employeeTable JOIN employeeTable relatedReportsTo ON employeeTable.ReportsTo = relatedReportsTo.EmployeeId WHERE (employeeTable.EmployeeId=1001) === 2019-07-01 15:55:16,239 [2-32] DEBUG SQLDataSource - [builtinApplication.employeesUpload_add, builtinApplication.null] Setting DSRequest as being part of a transaction === 2019-07-01 15:55:16,239 [2-32] INFO SQLDataSource - [builtinApplication.employeesUpload_add, builtinApplication.null] 113: Executing cache sync query on 'HSQLDB': SELECT LIMIT 0 1 employeeTable.EmployeeId, employeeTable.Name, employeeTable.ReportsTo, employeeTable.Gender, relatedReportsTo.Name AS ReportsToName FROM employeeTable JOIN employeeTable relatedReportsTo ON employeeTable.ReportsTo = relatedReportsTo.EmployeeId WHERE (employeeTable.EmployeeId=1001) === 2019-07-01 15:55:16,239 [2-32] INFO DSResponse - [builtinApplication.employeesUpload_add] DSResponse: List with 1 items === 2019-07-01 15:55:16,239 [2-32] INFO DSResponse - DSResponse: List with 1 items [B]=== 2019-07-01 15:55:16,239 [2-32] DEBUG SQLTransaction - Committing HSQLDB transaction "1939247906" === 2019-07-01 15:55:16,239 [2-32] DEBUG SQLTransaction - Committing HSQLDB transaction "1939247906" === 2019-07-01 15:55:16,239 [2-32] DEBUG SQLTransaction - Committing HSQLDB transaction "1939247906" === 2019-07-01 15:55:16,239 [2-32] DEBUG SQLTransaction - Committing HSQLDB transaction "1939247906" === 2019-07-01 15:55:16,239 [2-32] DEBUG SQLTransaction - Committing HSQLDB transaction "1939247906" === 2019-07-01 15:55:16,240 [2-32] DEBUG SQLTransaction - Committing HSQLDB transaction "1939247906" === 2019-07-01 15:55:16,240 [2-32] DEBUG SQLTransaction - Committing HSQLDB transaction "1939247906" === 2019-07-01 15:55:16,240 [2-32] DEBUG SQLTransaction - Committing HSQLDB transaction "1939247906"[/B] === 2019-07-01 15:55:16,240 [2-32] INFO DSResponse - DSResponse: List with 1 items === 2019-07-01 15:55:16,240 [2-32] DEBUG DeclarativeSecurity - Processing security checks for DataSource null, field null === 2019-07-01 15:55:16,240 [2-32] DEBUG DeclarativeSecurity - DataSource employeesUpload is not in the pre-checked list, processing... === 2019-07-01 15:55:16,241 [2-32] DEBUG DeclarativeSecurity - Processing security checks for DataSource null, field null === 2019-07-01 15:55:16,241 [2-32] DEBUG DeclarativeSecurity - Request is not a client request, ignoring security checks. === 2019-07-01 15:55:16,241 [2-32] DEBUG AppBase - [builtinApplication.null] No userTypes defined, allowing anyone access to all operations for this application === 2019-07-01 15:55:16,241 [2-32] DEBUG AppBase - [builtinApplication.null] No public zero-argument method named '_null' found, performing generic datasource operation === 2019-07-01 15:55:16,242 [2-32] INFO SQLDataSource - [builtinApplication.null] Performing fetch operation with criteria: {EmployeeId:182} values: {EmployeeId:182} === 2019-07-01 15:55:16,242 [2-32] DEBUG SQLDataSource - [builtinApplication.null] DataSource 115 acquired SQLDriver instance 793786614 during initialization === 2019-07-01 15:55:16,242 [2-32] INFO SQLDataSource - [builtinApplication.null] derived query: SELECT $defaultSelectClause FROM $defaultTableClause WHERE $defaultWhereClause === 2019-07-01 15:55:16,243 [2-32] INFO SQLDataSource - [builtinApplication.null] 115: Executing SQL query on 'HSQLDB': SELECT employeeTable.userOrder, employeeTable.Name, employeeTable.EmployeeId, employeeTable.ReportsTo, employeeTable.Job, employeeTable.Email, employeeTable.EmployeeType, employeeTable.EmployeeStatus, employeeTable.Salary, employeeTable.OrgUnit, employeeTable.Gender, employeeTable.MaritalStatus FROM employeeTable WHERE (employeeTable.EmployeeId=182) === 2019-07-01 15:55:16,243 [2-32] DEBUG SQLDataSource - [builtinApplication.null] Setting DSRequest as being part of a transaction === 2019-07-01 15:55:16,243 [2-32] INFO SQLDriver - [builtinApplication.null] Executing SQL query on 'HSQLDB' using connection '1939247906': SELECT employeeTable.userOrder, employeeTable.Name, employeeTable.EmployeeId, employeeTable.ReportsTo, employeeTable.Job, employeeTable.Email, employeeTable.EmployeeType, employeeTable.EmployeeStatus, employeeTable.Salary, employeeTable.OrgUnit, employeeTable.Gender, employeeTable.MaritalStatus FROM employeeTable WHERE (employeeTable.EmployeeId=182) === 2019-07-01 15:55:16,244 [2-32] INFO DSResponse - DSResponse: List with 1 items === 2019-07-01 15:55:16,244 [2-32] DEBUG DeclarativeSecurity - Processing security checks for DataSource null, field null === 2019-07-01 15:55:16,244 [2-32] DEBUG DeclarativeSecurity - Request is not a client request, ignoring security checks. === 2019-07-01 15:55:16,244 [2-32] DEBUG ServerObject - Couldn't find a public method named: fetch on class: com.smartgwt.sample.server.listener.EmployeesUpload === 2019-07-01 15:55:16,244 [2-32] DEBUG DataSourceDMI - DataSourceDMI: no public method name: fetch available on class: com.smartgwt.sample.server.listener.EmployeesUpload - defaulting to builtin operations. === 2019-07-01 15:55:16,244 [2-32] DEBUG AppBase - [builtinApplication.null] No userTypes defined, allowing anyone access to all operations for this application === 2019-07-01 15:55:16,244 [2-32] DEBUG AppBase - [builtinApplication.null] No public zero-argument method named '_null' found, performing generic datasource operation === 2019-07-01 15:55:16,244 [2-32] INFO SQLDataSource - [builtinApplication.null] Performing fetch operation with outputs: [EmployeeId, Name] criteria: {Name:"Jeff Doe"} values: {Name:"Jeff Doe"} === 2019-07-01 15:55:16,244 [2-32] INFO SQLDataSource - [builtinApplication.null] derived query: SELECT $defaultSelectClause FROM $defaultTableClause WHERE $defaultWhereClause === 2019-07-01 15:55:16,245 [2-32] INFO SQLDataSource - [builtinApplication.null] 113: Executing SQL query on 'HSQLDB': SELECT employeeTable.EmployeeId, employeeTable.Name FROM employeeTable WHERE (employeeTable.Name='Jeff Doe') === 2019-07-01 15:55:16,245 [2-32] DEBUG SQLDataSource - [builtinApplication.null] Setting DSRequest as being part of a transaction === 2019-07-01 15:55:16,245 [2-32] INFO SQLDriver - [builtinApplication.null] Executing SQL query on 'HSQLDB' using connection '1939247906': SELECT employeeTable.EmployeeId, employeeTable.Name FROM employeeTable WHERE (employeeTable.Name='Jeff Doe') === 2019-07-01 15:55:16,246 [2-32] INFO DSResponse - DSResponse: List with 0 items === 2019-07-01 15:55:18,292 [2-32] DEBUG DeclarativeSecurity - Processing security checks for DataSource null, field null === 2019-07-01 15:55:18,292 [2-32] DEBUG DeclarativeSecurity - DataSource employeesUpload is not in the pre-checked list, processing... === 2019-07-01 15:55:18,292 [2-32] DEBUG AppBase - [builtinApplication.employeesUpload_add] No userTypes defined, allowing anyone access to all operations for this application === 2019-07-01 15:55:18,292 [2-32] DEBUG AppBase - [builtinApplication.employeesUpload_add] No public zero-argument method named '_employeesUpload_add' found, performing generic datasource operation === 2019-07-01 15:55:18,293 [2-32] INFO SQLDataSource - [builtinApplication.employeesUpload_add] Performing add operation with criteria: {ReportsTo:182,Gender:"male",EmployeeId:1002,ReportsToName:"Tamara Kane",Name:"Jeff Doe"} values: {ReportsTo:182,Gender:"male",EmployeeId:1002,ReportsToName:"Tamara Kane",Name:"Jeff Doe"} === 2019-07-01 15:55:18,293 [2-32] INFO SQLValuesClause - [builtinApplication.employeesUpload_add] Ignored data for non-existent or included columns: [ReportsToName] === 2019-07-01 15:55:18,293 [2-32] DEBUG SQLValuesClause - [builtinApplication.employeesUpload_add] Sequences: {} === 2019-07-01 15:55:18,294 [2-32] DEBUG SQLDataSource - [builtinApplication.employeesUpload_add] Setting DSRequest as being part of a transaction === 2019-07-01 15:55:18,294 [2-32] INFO SQLDriver - [builtinApplication.employeesUpload_add] Executing SQL query on 'HSQLDB' using connection '1939247906': INSERT INTO employeeTable (EmployeeId, Gender, Name, ReportsTo) VALUES (1002, 'male', 'Jeff Doe', 182) === 2019-07-01 15:55:18,294 [2-32] DEBUG SQLDriver - [builtinApplication.employeesUpload_add] SequenceMode is not JDBC_DRIVER, skipping search for generated values === 2019-07-01 15:55:18,294 [2-32] INFO SQLDataSource - [builtinApplication.employeesUpload_add] primaryKeys: {EmployeeId=1002} === 2019-07-01 15:55:18,294 [2-32] DEBUG SQLDataSource - [builtinApplication.employeesUpload_add] Gathered all keys. lastPrimaryKeys is now {EmployeeId=1002} === 2019-07-01 15:55:18,294 [2-32] DEBUG SQLDataSource - [builtinApplication.employeesUpload_add] add operation affected 1 rows === 2019-07-01 15:55:18,295 [2-32] DEBUG DeclarativeSecurity - [builtinApplication.employeesUpload_add] Processing security checks for DataSource null, field null === 2019-07-01 15:55:18,295 [2-32] DEBUG DeclarativeSecurity - [builtinApplication.employeesUpload_add] DataSource employeesUpload is not in the pre-checked list, processing... === 2019-07-01 15:55:18,295 [2-32] DEBUG DeclarativeSecurity - [builtinApplication.employeesUpload_add] Processing security checks for DataSource employees, field EmployeeId === 2019-07-01 15:55:18,295 [2-32] DEBUG DeclarativeSecurity - [builtinApplication.employeesUpload_add] DataSource employees is not in the pre-checked list, processing... === 2019-07-01 15:55:18,295 [2-32] DEBUG DeclarativeSecurity - [builtinApplication.employeesUpload_add] Processing security checks for DataSource employees, field Name === 2019-07-01 15:55:18,295 [2-32] DEBUG DeclarativeSecurity - [builtinApplication.employeesUpload_add] DataSource employees is not in the pre-checked list, processing... === 2019-07-01 15:55:18,295 [2-32] DEBUG ServerObject - [builtinApplication.employeesUpload_add] Couldn't find a public method named: fetch on class: com.smartgwt.sample.server.listener.EmployeesUpload === 2019-07-01 15:55:18,295 [2-32] DEBUG DataSourceDMI - [builtinApplication.employeesUpload_add] DataSourceDMI: no public method name: fetch available on class: com.smartgwt.sample.server.listener.EmployeesUpload - defaulting to builtin operations. === 2019-07-01 15:55:18,295 [2-32] DEBUG AppBase - [builtinApplication.employeesUpload_add, builtinApplication.null] No userTypes defined, allowing anyone access to all operations for this application === 2019-07-01 15:55:18,296 [2-32] DEBUG AppBase - [builtinApplication.employeesUpload_add, builtinApplication.null] No public zero-argument method named '_null' found, performing generic datasource operation === 2019-07-01 15:55:18,296 [2-32] INFO SQLDataSource - [builtinApplication.employeesUpload_add, builtinApplication.null] Performing fetch operation with criteria: {EmployeeId:1002} values: {EmployeeId:1002} === 2019-07-01 15:55:18,296 [2-32] INFO SQLDataSource - [builtinApplication.employeesUpload_add, builtinApplication.null] derived query: SELECT $defaultSelectClause FROM $defaultTableClause$defaultAnsiJoinClause WHERE $defaultWhereClause === 2019-07-01 15:55:18,298 [2-32] DEBUG SQLDataSource - [builtinApplication.employeesUpload_add, builtinApplication.null] Using SQL Limit query === 2019-07-01 15:55:18,298 [2-32] DEBUG SQLDataSource - [builtinApplication.employeesUpload_add, builtinApplication.null] SQL windowed select rows 0->-1, result size 1. Query: SELECT LIMIT 0 1 employeeTable.EmployeeId, employeeTable.Name, employeeTable.ReportsTo, employeeTable.Gender, relatedReportsTo.Name AS ReportsToName FROM employeeTable JOIN employeeTable relatedReportsTo ON employeeTable.ReportsTo = relatedReportsTo.EmployeeId WHERE (employeeTable.EmployeeId=1002) === 2019-07-01 15:55:18,298 [2-32] DEBUG SQLDataSource - [builtinApplication.employeesUpload_add, builtinApplication.null] SQL windowed select rows 0->-1, result size 1. Query: SELECT LIMIT 0 1 employeeTable.EmployeeId, employeeTable.Name, employeeTable.ReportsTo, employeeTable.Gender, relatedReportsTo.Name AS ReportsToName FROM employeeTable JOIN employeeTable relatedReportsTo ON employeeTable.ReportsTo = relatedReportsTo.EmployeeId WHERE (employeeTable.EmployeeId=1002) === 2019-07-01 15:55:18,298 [2-32] DEBUG SQLDataSource - [builtinApplication.employeesUpload_add, builtinApplication.null] Setting DSRequest as being part of a transaction === 2019-07-01 15:55:18,298 [2-32] INFO SQLDataSource - [builtinApplication.employeesUpload_add, builtinApplication.null] 113: Executing cache sync query on 'HSQLDB': SELECT LIMIT 0 1 employeeTable.EmployeeId, employeeTable.Name, employeeTable.ReportsTo, employeeTable.Gender, relatedReportsTo.Name AS ReportsToName FROM employeeTable JOIN employeeTable relatedReportsTo ON employeeTable.ReportsTo = relatedReportsTo.EmployeeId WHERE (employeeTable.EmployeeId=1002) === 2019-07-01 15:55:18,298 [2-32] INFO DSResponse - [builtinApplication.employeesUpload_add] DSResponse: List with 1 items === 2019-07-01 15:55:18,299 [2-32] INFO DSResponse - DSResponse: List with 1 items [B]=== 2019-07-01 15:55:18,299 [2-32] DEBUG SQLTransaction - Committing HSQLDB transaction "1939247906" === 2019-07-01 15:55:18,299 [2-32] DEBUG SQLTransaction - Committing HSQLDB transaction "1939247906" === 2019-07-01 15:55:18,299 [2-32] DEBUG SQLTransaction - Committing HSQLDB transaction "1939247906" === 2019-07-01 15:55:18,299 [2-32] DEBUG SQLTransaction - Committing HSQLDB transaction "1939247906" === 2019-07-01 15:55:18,299 [2-32] DEBUG SQLTransaction - Committing HSQLDB transaction "1939247906" === 2019-07-01 15:55:18,299 [2-32] DEBUG SQLTransaction - Committing HSQLDB transaction "1939247906" === 2019-07-01 15:55:18,299 [2-32] DEBUG SQLTransaction - Committing HSQLDB transaction "1939247906" === 2019-07-01 15:55:18,299 [2-32] DEBUG SQLTransaction - Committing HSQLDB transaction "1939247906" === 2019-07-01 15:55:18,299 [2-32] DEBUG SQLTransaction - Committing HSQLDB transaction "1939247906" === 2019-07-01 15:55:18,299 [2-32] DEBUG SQLTransaction - Committing HSQLDB transaction "1939247906" === 2019-07-01 15:55:18,299 [2-32] DEBUG SQLTransaction - Committing HSQLDB transaction "1939247906" === 2019-07-01 15:55:18,299 [2-32] DEBUG SQLTransaction - Committing HSQLDB transaction "1939247906"[/B] === 2019-07-01 15:55:18,299 [2-32] INFO DSResponse - DSResponse: List with 1 items === 2019-07-01 15:55:18,299 [2-32] DEBUG DeclarativeSecurity - Processing security checks for DataSource null, field null === 2019-07-01 15:55:18,299 [2-32] DEBUG DeclarativeSecurity - DataSource employeesUpload is not in the pre-checked list, processing... === 2019-07-01 15:55:18,301 [2-32] DEBUG DeclarativeSecurity - Processing security checks for DataSource null, field null === 2019-07-01 15:55:18,301 [2-32] DEBUG DeclarativeSecurity - Request is not a client request, ignoring security checks. === 2019-07-01 15:55:18,301 [2-32] DEBUG AppBase - [builtinApplication.null] No userTypes defined, allowing anyone access to all operations for this application === 2019-07-01 15:55:18,301 [2-32] DEBUG AppBase - [builtinApplication.null] No public zero-argument method named '_null' found, performing generic datasource operation === 2019-07-01 15:55:18,302 [2-32] INFO SQLDataSource - [builtinApplication.null] Performing fetch operation with criteria: {EmployeeId:182} values: {EmployeeId:182} === 2019-07-01 15:55:18,302 [2-32] DEBUG SQLDataSource - [builtinApplication.null] DataSource 117 acquired SQLDriver instance 82037668 during initialization === 2019-07-01 15:55:18,302 [2-32] INFO SQLDataSource - [builtinApplication.null] derived query: SELECT $defaultSelectClause FROM $defaultTableClause WHERE $defaultWhereClause === 2019-07-01 15:55:18,303 [2-32] INFO SQLDataSource - [builtinApplication.null] 117: Executing SQL query on 'HSQLDB': SELECT employeeTable.userOrder, employeeTable.Name, employeeTable.EmployeeId, employeeTable.ReportsTo, employeeTable.Job, employeeTable.Email, employeeTable.EmployeeType, employeeTable.EmployeeStatus, employeeTable.Salary, employeeTable.OrgUnit, employeeTable.Gender, employeeTable.MaritalStatus FROM employeeTable WHERE (employeeTable.EmployeeId=182) === 2019-07-01 15:55:18,303 [2-32] DEBUG SQLDataSource - [builtinApplication.null] Setting DSRequest as being part of a transaction === 2019-07-01 15:55:18,303 [2-32] INFO SQLDriver - [builtinApplication.null] Executing SQL query on 'HSQLDB' using connection '1939247906': SELECT employeeTable.userOrder, employeeTable.Name, employeeTable.EmployeeId, employeeTable.ReportsTo, employeeTable.Job, employeeTable.Email, employeeTable.EmployeeType, employeeTable.EmployeeStatus, employeeTable.Salary, employeeTable.OrgUnit, employeeTable.Gender, employeeTable.MaritalStatus FROM employeeTable WHERE (employeeTable.EmployeeId=182) === 2019-07-01 15:55:18,304 [2-32] INFO DSResponse - DSResponse: List with 1 items === 2019-07-01 15:55:18,304 [2-32] DEBUG DeclarativeSecurity - Processing security checks for DataSource null, field null === 2019-07-01 15:55:18,304 [2-32] DEBUG DeclarativeSecurity - Request is not a client request, ignoring security checks. === 2019-07-01 15:55:18,305 [2-32] DEBUG ServerObject - Couldn't find a public method named: fetch on class: com.smartgwt.sample.server.listener.EmployeesUpload === 2019-07-01 15:55:18,305 [2-32] DEBUG DataSourceDMI - DataSourceDMI: no public method name: fetch available on class: com.smartgwt.sample.server.listener.EmployeesUpload - defaulting to builtin operations. === 2019-07-01 15:55:18,305 [2-32] DEBUG AppBase - [builtinApplication.null] No userTypes defined, allowing anyone access to all operations for this application === 2019-07-01 15:55:18,305 [2-32] DEBUG AppBase - [builtinApplication.null] No public zero-argument method named '_null' found, performing generic datasource operation === 2019-07-01 15:55:18,305 [2-32] INFO SQLDataSource - [builtinApplication.null] Performing fetch operation with outputs: [EmployeeId, Name] criteria: {Name:"John Doe"} values: {Name:"John Doe"} === 2019-07-01 15:55:18,305 [2-32] INFO SQLDataSource - [builtinApplication.null] derived query: SELECT $defaultSelectClause FROM $defaultTableClause WHERE $defaultWhereClause === 2019-07-01 15:55:18,306 [2-32] INFO SQLDataSource - [builtinApplication.null] 113: Executing SQL query on 'HSQLDB': SELECT employeeTable.EmployeeId, employeeTable.Name FROM employeeTable WHERE (employeeTable.Name='John Doe') === 2019-07-01 15:55:18,306 [2-32] DEBUG SQLDataSource - [builtinApplication.null] Setting DSRequest as being part of a transaction === 2019-07-01 15:55:18,306 [2-32] INFO SQLDriver - [builtinApplication.null] Executing SQL query on 'HSQLDB' using connection '1939247906': SELECT employeeTable.EmployeeId, employeeTable.Name FROM employeeTable WHERE (employeeTable.Name='John Doe') === 2019-07-01 15:55:18,307 [2-32] INFO DSResponse - DSResponse: List with 0 items === 2019-07-01 15:55:21,619 [2-32] DEBUG DeclarativeSecurity - Processing security checks for DataSource null, field null === 2019-07-01 15:55:21,619 [2-32] DEBUG DeclarativeSecurity - DataSource employeesUpload is not in the pre-checked list, processing... === 2019-07-01 15:55:21,619 [2-32] DEBUG AppBase - [builtinApplication.employeesUpload_add] No userTypes defined, allowing anyone access to all operations for this application === 2019-07-01 15:55:21,619 [2-32] DEBUG AppBase - [builtinApplication.employeesUpload_add] No public zero-argument method named '_employeesUpload_add' found, performing generic datasource operation === 2019-07-01 15:55:21,620 [2-32] INFO SQLDataSource - [builtinApplication.employeesUpload_add] Performing add operation with criteria: {ReportsTo:182,Gender:"male",EmployeeId:1003,ReportsToName:"Tamara Kane",Name:"John Doe"} values: {ReportsTo:182,Gender:"male",EmployeeId:1003,ReportsToName:"Tamara Kane",Name:"John Doe"} === 2019-07-01 15:55:21,620 [2-32] INFO SQLValuesClause - [builtinApplication.employeesUpload_add] Ignored data for non-existent or included columns: [ReportsToName] === 2019-07-01 15:55:21,620 [2-32] DEBUG SQLValuesClause - [builtinApplication.employeesUpload_add] Sequences: {} === 2019-07-01 15:55:21,621 [2-32] DEBUG SQLDataSource - [builtinApplication.employeesUpload_add] Setting DSRequest as being part of a transaction === 2019-07-01 15:55:21,621 [2-32] INFO SQLDriver - [builtinApplication.employeesUpload_add] Executing SQL query on 'HSQLDB' using connection '1939247906': INSERT INTO employeeTable (EmployeeId, Gender, Name, ReportsTo) VALUES (1003, 'male', 'John Doe', 182) === 2019-07-01 15:55:21,621 [2-32] DEBUG SQLDriver - [builtinApplication.employeesUpload_add] SequenceMode is not JDBC_DRIVER, skipping search for generated values === 2019-07-01 15:55:21,621 [2-32] INFO SQLDataSource - [builtinApplication.employeesUpload_add] primaryKeys: {EmployeeId=1003} === 2019-07-01 15:55:21,622 [2-32] DEBUG SQLDataSource - [builtinApplication.employeesUpload_add] Gathered all keys. lastPrimaryKeys is now {EmployeeId=1003} === 2019-07-01 15:55:21,622 [2-32] DEBUG SQLDataSource - [builtinApplication.employeesUpload_add] add operation affected 1 rows === 2019-07-01 15:55:21,622 [2-32] DEBUG DeclarativeSecurity - [builtinApplication.employeesUpload_add] Processing security checks for DataSource null, field null === 2019-07-01 15:55:21,622 [2-32] DEBUG DeclarativeSecurity - [builtinApplication.employeesUpload_add] DataSource employeesUpload is not in the pre-checked list, processing... === 2019-07-01 15:55:21,622 [2-32] DEBUG DeclarativeSecurity - [builtinApplication.employeesUpload_add] Processing security checks for DataSource employees, field EmployeeId === 2019-07-01 15:55:21,622 [2-32] DEBUG DeclarativeSecurity - [builtinApplication.employeesUpload_add] DataSource employees is not in the pre-checked list, processing... === 2019-07-01 15:55:21,622 [2-32] DEBUG DeclarativeSecurity - [builtinApplication.employeesUpload_add] Processing security checks for DataSource employees, field Name === 2019-07-01 15:55:21,622 [2-32] DEBUG DeclarativeSecurity - [builtinApplication.employeesUpload_add] DataSource employees is not in the pre-checked list, processing... === 2019-07-01 15:55:21,622 [2-32] DEBUG ServerObject - [builtinApplication.employeesUpload_add] Couldn't find a public method named: fetch on class: com.smartgwt.sample.server.listener.EmployeesUpload === 2019-07-01 15:55:21,622 [2-32] DEBUG DataSourceDMI - [builtinApplication.employeesUpload_add] DataSourceDMI: no public method name: fetch available on class: com.smartgwt.sample.server.listener.EmployeesUpload - defaulting to builtin operations. === 2019-07-01 15:55:21,622 [2-32] DEBUG AppBase - [builtinApplication.employeesUpload_add, builtinApplication.null] No userTypes defined, allowing anyone access to all operations for this application === 2019-07-01 15:55:21,622 [2-32] DEBUG AppBase - [builtinApplication.employeesUpload_add, builtinApplication.null] No public zero-argument method named '_null' found, performing generic datasource operation === 2019-07-01 15:55:21,622 [2-32] INFO SQLDataSource - [builtinApplication.employeesUpload_add, builtinApplication.null] Performing fetch operation with criteria: {EmployeeId:1003} values: {EmployeeId:1003} === 2019-07-01 15:55:21,623 [2-32] INFO SQLDataSource - [builtinApplication.employeesUpload_add, builtinApplication.null] derived query: SELECT $defaultSelectClause FROM $defaultTableClause$defaultAnsiJoinClause WHERE $defaultWhereClause === 2019-07-01 15:55:21,624 [2-32] DEBUG SQLDataSource - [builtinApplication.employeesUpload_add, builtinApplication.null] Using SQL Limit query === 2019-07-01 15:55:21,624 [2-32] DEBUG SQLDataSource - [builtinApplication.employeesUpload_add, builtinApplication.null] SQL windowed select rows 0->-1, result size 1. Query: SELECT LIMIT 0 1 employeeTable.EmployeeId, employeeTable.Name, employeeTable.ReportsTo, employeeTable.Gender, relatedReportsTo.Name AS ReportsToName FROM employeeTable JOIN employeeTable relatedReportsTo ON employeeTable.ReportsTo = relatedReportsTo.EmployeeId WHERE (employeeTable.EmployeeId=1003) === 2019-07-01 15:55:21,624 [2-32] DEBUG SQLDataSource - [builtinApplication.employeesUpload_add, builtinApplication.null] SQL windowed select rows 0->-1, result size 1. Query: SELECT LIMIT 0 1 employeeTable.EmployeeId, employeeTable.Name, employeeTable.ReportsTo, employeeTable.Gender, relatedReportsTo.Name AS ReportsToName FROM employeeTable JOIN employeeTable relatedReportsTo ON employeeTable.ReportsTo = relatedReportsTo.EmployeeId WHERE (employeeTable.EmployeeId=1003) === 2019-07-01 15:55:21,624 [2-32] DEBUG SQLDataSource - [builtinApplication.employeesUpload_add, builtinApplication.null] Setting DSRequest as being part of a transaction === 2019-07-01 15:55:21,624 [2-32] INFO SQLDataSource - [builtinApplication.employeesUpload_add, builtinApplication.null] 113: Executing cache sync query on 'HSQLDB': SELECT LIMIT 0 1 employeeTable.EmployeeId, employeeTable.Name, employeeTable.ReportsTo, employeeTable.Gender, relatedReportsTo.Name AS ReportsToName FROM employeeTable JOIN employeeTable relatedReportsTo ON employeeTable.ReportsTo = relatedReportsTo.EmployeeId WHERE (employeeTable.EmployeeId=1003) === 2019-07-01 15:55:21,624 [2-32] INFO DSResponse - [builtinApplication.employeesUpload_add] DSResponse: List with 1 items === 2019-07-01 15:55:21,624 [2-32] INFO DSResponse - DSResponse: List with 1 items [B]=== 2019-07-01 15:55:21,624 [2-32] DEBUG SQLTransaction - Committing HSQLDB transaction "1939247906" === 2019-07-01 15:55:21,624 [2-32] DEBUG SQLTransaction - Committing HSQLDB transaction "1939247906" === 2019-07-01 15:55:21,624 [2-32] DEBUG SQLTransaction - Committing HSQLDB transaction "1939247906" === 2019-07-01 15:55:21,624 [2-32] DEBUG SQLTransaction - Committing HSQLDB transaction "1939247906" === 2019-07-01 15:55:21,624 [2-32] DEBUG SQLTransaction - Committing HSQLDB transaction "1939247906" === 2019-07-01 15:55:21,624 [2-32] DEBUG SQLTransaction - Committing HSQLDB transaction "1939247906" === 2019-07-01 15:55:21,624 [2-32] DEBUG SQLTransaction - Committing HSQLDB transaction "1939247906" === 2019-07-01 15:55:21,624 [2-32] DEBUG SQLTransaction - Committing HSQLDB transaction "1939247906" === 2019-07-01 15:55:21,624 [2-32] DEBUG SQLTransaction - Committing HSQLDB transaction "1939247906" === 2019-07-01 15:55:21,624 [2-32] DEBUG SQLTransaction - Committing HSQLDB transaction "1939247906" === 2019-07-01 15:55:21,624 [2-32] DEBUG SQLTransaction - Committing HSQLDB transaction "1939247906" === 2019-07-01 15:55:21,624 [2-32] DEBUG SQLTransaction - Committing HSQLDB transaction "1939247906" === 2019-07-01 15:55:21,624 [2-32] DEBUG SQLTransaction - Committing HSQLDB transaction "1939247906" === 2019-07-01 15:55:21,624 [2-32] DEBUG SQLTransaction - Committing HSQLDB transaction "1939247906" === 2019-07-01 15:55:21,624 [2-32] DEBUG SQLTransaction - Committing HSQLDB transaction "1939247906" === 2019-07-01 15:55:21,624 [2-32] DEBUG SQLTransaction - Committing HSQLDB transaction "1939247906"[/B] === 2019-07-01 15:55:21,625 [2-32] INFO DSResponse - DSResponse: List with 1 items === 2019-07-01 15:55:21,625 [2-32] DEBUG RPCManager - Content type for RPC transaction: text/plain; charset=UTF-8 === 2019-07-01 15:55:21,625 [2-32] DEBUG SQLTransaction - Committing HSQLDB transaction "1939247906" === 2019-07-01 15:55:21,625 [2-32] DEBUG RPCManager - DMI response, dropExtraFields: true === 2019-07-01 15:55:21,625 [2-32] DEBUG RPCManager - DMI response, dropExtraFields: true === 2019-07-01 15:55:21,625 [2-32] DEBUG RPCManager - DMI response, dropExtraFields: true === 2019-07-01 15:55:21,625 [2-32] DEBUG RPCManager - DMI response, dropExtraFields: true === 2019-07-01 15:55:21,625 [2-32] DEBUG SQLTransaction - getConnection() looked for transactional connection for HSQLDB: hashcode "1939247906" === 2019-07-01 15:55:21,625 [2-32] WARN SQLTransaction - Ending HSQLDB transaction "1939247906" === 2019-07-01 15:55:21,625 [2-32] DEBUG SQLConnectionManager - About to close connection with hashcode "1939247906" === 2019-07-01 15:55:21,626 [2-32] DEBUG SQLDataSource - About to clear SQLDriver state for DS instance 113 === 2019-07-01 15:55:21,626 [2-32] DEBUG SQLDriver - Freeing SQLDriver dbConnection 147239089 for SQLDriver instance 1503672471 === 2019-07-01 15:55:21,626 [2-32] DEBUG SQLConnectionManager - About to close connection with hashcode "147239089" === 2019-07-01 15:55:21,626 [2-32] DEBUG SQLDataSource - About to clear SQLDriver state for DS instance 105 === 2019-07-01 15:55:21,626 [2-32] DEBUG SQLDataSource - About to clear SQLDriver state for DS instance 105 === 2019-07-01 15:55:21,626 [2-32] DEBUG SQLDataSource - About to clear SQLDriver state for DS instance 113 === 2019-07-01 15:55:21,626 [2-32] DEBUG SQLDataSource - About to clear SQLDriver state for DS instance 113 === 2019-07-01 15:55:21,626 [2-32] DEBUG SQLDataSource - About to clear SQLDriver state for DS instance 83 === 2019-07-01 15:55:21,626 [2-32] DEBUG SQLDriver - Freeing SQLDriver dbConnection 1723282589 for SQLDriver instance 1096140550 === 2019-07-01 15:55:21,626 [2-32] DEBUG SQLConnectionManager - About to close connection with hashcode "1723282589" === 2019-07-01 15:55:21,626 [2-32] DEBUG SQLDataSource - About to clear SQLDriver state for DS instance 83 === 2019-07-01 15:55:21,626 [2-32] DEBUG SQLDataSource - About to clear SQLDriver state for DS instance 83 === 2019-07-01 15:55:21,626 [2-32] DEBUG SQLDataSource - About to clear SQLDriver state for DS instance 113 === 2019-07-01 15:55:21,626 [2-32] DEBUG SQLTransaction - getConnection() looked for transactional connection for HSQLDB: (connection is null) === 2019-07-01 15:55:21,626 [2-32] DEBUG SQLDataSource - About to clear SQLDriver state for DS instance 113 === 2019-07-01 15:55:21,626 [2-32] DEBUG SQLTransaction - getConnection() looked for transactional connection for HSQLDB: (connection is null) === 2019-07-01 15:55:21,626 [2-32] DEBUG SQLDataSource - About to clear SQLDriver state for DS instance 99 === 2019-07-01 15:55:21,626 [2-32] DEBUG SQLDataSource - About to clear SQLDriver state for DS instance 99 === 2019-07-01 15:55:21,626 [2-32] DEBUG SQLDataSource - About to clear SQLDriver state for DS instance 99 === 2019-07-01 15:55:21,626 [2-32] DEBUG SQLTransaction - getConnection() looked for transactional connection for HSQLDB: (connection is null) === 2019-07-01 15:55:21,626 [2-32] DEBUG SQLDataSource - About to clear SQLDriver state for DS instance 113 === 2019-07-01 15:55:21,626 [2-32] DEBUG SQLTransaction - getConnection() looked for transactional connection for HSQLDB: (connection is null) === 2019-07-01 15:55:21,626 [2-32] DEBUG SQLDataSource - About to clear SQLDriver state for DS instance 113 === 2019-07-01 15:55:21,626 [2-32] DEBUG SQLTransaction - getConnection() looked for transactional connection for HSQLDB: (connection is null) === 2019-07-01 15:55:21,626 [2-32] DEBUG SQLDataSource - About to clear SQLDriver state for DS instance 115 === 2019-07-01 15:55:21,626 [2-32] DEBUG SQLDataSource - About to clear SQLDriver state for DS instance 115 === 2019-07-01 15:55:21,626 [2-32] DEBUG SQLDataSource - About to clear SQLDriver state for DS instance 115 === 2019-07-01 15:55:21,626 [2-32] DEBUG SQLTransaction - getConnection() looked for transactional connection for HSQLDB: (connection is null) === 2019-07-01 15:55:21,626 [2-32] DEBUG SQLDataSource - About to clear SQLDriver state for DS instance 113 === 2019-07-01 15:55:21,626 [2-32] DEBUG SQLTransaction - getConnection() looked for transactional connection for HSQLDB: (connection is null) === 2019-07-01 15:55:21,626 [2-32] DEBUG SQLDataSource - About to clear SQLDriver state for DS instance 113 === 2019-07-01 15:55:21,626 [2-32] DEBUG SQLTransaction - getConnection() looked for transactional connection for HSQLDB: (connection is null) === 2019-07-01 15:55:21,626 [2-32] DEBUG SQLDataSource - About to clear SQLDriver state for DS instance 117 === 2019-07-01 15:55:21,626 [2-32] DEBUG SQLDataSource - About to clear SQLDriver state for DS instance 117 === 2019-07-01 15:55:21,627 [2-32] DEBUG SQLDataSource - About to clear SQLDriver state for DS instance 117 === 2019-07-01 15:55:21,627 [2-32] DEBUG SQLTransaction - getConnection() looked for transactional connection for HSQLDB: (connection is null) === 2019-07-01 15:55:21,627 [2-32] DEBUG SQLDataSource - About to clear SQLDriver state for DS instance 113 === 2019-07-01 15:55:21,627 [2-32] INFO Compression - /builtinds/sc/IDACall: 838 -> 259 bytes
Code:
package com.smartgwt.sample.client; import com.google.gwt.core.client.EntryPoint; import com.smartgwt.client.core.KeyIdentifier; import com.smartgwt.client.data.DataSource; import com.smartgwt.client.types.PartialCommitOption; import com.smartgwt.client.util.Page; import com.smartgwt.client.util.PageKeyHandler; import com.smartgwt.client.util.SC; import com.smartgwt.client.widgets.BatchUploader; import com.smartgwt.client.widgets.IButton; import com.smartgwt.client.widgets.Window; import com.smartgwt.client.widgets.events.ClickEvent; import com.smartgwt.client.widgets.events.ClickHandler; import com.smartgwt.client.widgets.form.fields.SelectItem; import com.smartgwt.client.widgets.grid.ListGridField; import com.smartgwt.client.widgets.layout.VLayout; public class BuiltInDS implements EntryPoint { private VLayout mainLayout; private IButton recreateBtn; public void onModuleLoad() { KeyIdentifier debugKey = new KeyIdentifier(); debugKey.setCtrlKey(true); debugKey.setKeyName("D"); Page.registerKey(debugKey, new PageKeyHandler() { public void execute(String keyName) { SC.showConsole(); } }); mainLayout = new VLayout(20); mainLayout.setWidth100(); mainLayout.setHeight100(); recreateBtn = new IButton("Recreate"); recreateBtn.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { recreate(); } }); mainLayout.addMember(recreateBtn); recreate(); mainLayout.draw(); } private void recreate() { Window w = new Window(); w.setWidth("95%"); w.setHeight("95%"); w.setMembersMargin(0); w.setModalMaskOpacity(70); w.setTitle("editorProperties not used in BatchUploader"); w.setShowMinimizeButton(false); w.setIsModal(true); w.setShowModalMask(true); w.centerInPage(); BatchUploader batchUploader = new BatchUploader(); batchUploader.setWidth100(); batchUploader.setUploadDataSource(DataSource.get("employeesUpload")); batchUploader.setPartialCommit(PartialCommitOption.RETAIN); ListGridField employeeIdLGF = new ListGridField("EmployeeId"); ListGridField nameLGF = new ListGridField("Name"); ListGridField managerLGF = new ListGridField("ReportsTo"); SelectItem si = new SelectItem("ReportsTo"); si.setOptionDataSource(DataSource.get("employees")); si.setValueField("EmployeeId"); ListGridField plFieldName = new ListGridField("Name"); ListGridField plFieldEmployeeType = new ListGridField("EmployeeType"); ListGridField plFieldGender = new ListGridField("Gender"); ListGridField plFieldEmployeeId = new ListGridField("EmployeeId"); si.setPickListFields(plFieldName, plFieldEmployeeType, plFieldGender, plFieldEmployeeId); si.setSortField("Name"); managerLGF.setEditorProperties(si); ListGridField genderLGF = new ListGridField("Gender"); batchUploader.setGridFields(employeeIdLGF, nameLGF, genderLGF, managerLGF); w.addItem(batchUploader); w.show(); } }
Code:
<DataSource ID="employeesUpload" serverType="sql" tableName="employeeTable" recordName="employee" useAnsiJoins="true"> <fields> <field name="EmployeeId" primaryKey="true" hidden="true" type="integer" /> <field name="Name" uploadFieldName="Name" title="Name" type="text" length="128"> <validators> <validator type="isUnique" caseSensitive="true" /> </validators> </field> <field name="ReportsTo" uploadFieldName="ReportsTo" type="integer" displayField="ReportsToName" title="Manager" required="true" importStrategy="display" foreignKey="employees.EmployeeId" relatedTableAlias="relatedReportsTo"> <validators> <validator type="hasRelatedRecord" errorMessage="Unknown ReportsTo" /> </validators> </field> <field name="ReportsToName" includeFrom="employees.Name" includeVia="ReportsTo" /> <field name="Gender" uploadFieldName="Gender" title="Gender" type="text" length="6"> <validators> <validator type="required" /> </validators> <valueMap> <value>male</value> <value>female</value> </valueMap> </field> </fields> <serverObject lookupStyle="new" className="com.smartgwt.sample.server.listener.EmployeesUpload" /> </DataSource>
Code:
package com.smartgwt.sample.server.listener; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import com.isomorphic.datasource.DSRequest; import com.isomorphic.datasource.DSResponse; import com.isomorphic.datasource.DSTransaction; public class EmployeesUpload { public DSResponse add(DSRequest dsRequest, HttpServletRequest servletRequest, HttpServletResponse servletResponse) throws Exception { DSTransaction dsTransaction = null; if (dsRequest.getRPCManager() == null || dsRequest.getRPCManager().getDsTransaction() == null) { dsTransaction = new DSTransaction(); dsTransaction.setUserId(dsRequest.getUserId()); dsTransaction.setClientRequest(false); } else dsTransaction = dsRequest.getRPCManager().getDsTransaction(); DSResponse addResponse = dsRequest.execute(); if (!addResponse.statusIsError()) dsTransaction.commit(); return addResponse; } }
Code:
<script src="builtinds/sc/DataSourceLoader?dataSource=employees,employeesUpload,batchUpload"></script>
Code:
Name,ReportsTo,Gender,EmployeeId Anna Sun,Charles Madigen,female,1000 Mike Sun,Tamara Kane,male,1001 Jeff Doe,Tamara Kane,male,1002 John Doe,Tamara Kane,male,1003
Blama
Comment