Pentaho Kettle error: "Error closing prepared statement" - integration

There is a Pentaho Data Integration (Kettle) Job that I'm trying to run on a client's workstation. It yields the following error:
2012/05/21 11:38:21 - Update Case Capital.0 - ERROR (version 4.3.0-GA, build 16753 from 2012-04-18 21.39.30 by buildguy) : Unable to commit Update connection [Voyager] :org.pentaho.di.core.exception.KettleDatabaseException:
2012/05/21 11:38:21 - Update Case Capital.0 - ERROR (version 4.3.0-GA, build 16753 from 2012-04-18 21.39.30 by buildguy) : Error closing prepared statement
2012/05/21 11:38:21 - Update Case Capital.0 - ERROR (version 4.3.0-GA, build 16753 from 2012-04-18 21.39.30 by buildguy) : This statement is already closed.
The Job runs fine on my computer on a test database, and it ran without any problems at the client as well. Other Kettle Jobs also fail with the same error at the client.
The error happens in an Update step (that runs SQL UPDATE statements) after an arbitrary number of updates had been done. The database used is Firebird 2.5.1.26351 (super classic).
Any advice as to why this happens?

Given the error message Error closing prepared statement and This statement is already closed., I think you are confronted with a bug in Jaybird 2.1.6 and earlier, where closing a statement multiple times will throw an SQLException (while the JDBC api doc specifies that a close() should be ignored if already closed).
That bug is fixed in Jaybird 2.2 (which has not been released yet, but the beta is available at http://www.firebirdsql.org/en/jdbc-driver/ )
I hope you can test if that indeed solves the problem, otherwise I would appreciate a more detailed bug report at http://tracker.firebirdsql.org/browse/JDBC
Full disclosure: I am one of the developers of Jaybird.

Related

exception emyxerror in module mysql query browser.exe at 0010F992

Whenever I try to open Mysql Query Browser, that error appears. What should I do?
exception emyxerror in module mysql query browser.exe at 0010F992 / Error while loading stored connections.Error Numver 3
Mysql query browser wanted to be executed. However, the error appeared and there was no solution found on the Internet.

Why power bi gives the following error :Fatal error encountered during data read.. '?

When I am trying to get my data from MySQL in Power bi, after some time power bi gives the following error: Failed to save modifications to the server. Error returned: 'OLE DB or ODBC error: [DataSource.Error] MySQL: Fatal error encountered during data read.. '.
Since I am working with json data type, I assume that perheps there is a problem with that, but how to solve this error?
I was looking for solution but I found only something about changing data type. So I did so but it stils gives me this error.
The error there seems to be about the data source not the data type.
We ve had few of these before, it might have to do with some edit done in the data source which i assume in an SQL database.
One solution would be to revoke PBI access and grant it again.

Pentaho "Couldn't get row from result set" error

When I run this query on my MySql client (DBVisualizer) it runs. (It functions and works 100%)
SELECT
MAX(birth_date) AS max_bd
INTO
#bd_max
FROM
employees.birthdays
WHERE
gender= 'male';
When I run it in Pentaho, in a "Execute SQL script" I get this error
2018/11/04 10:44:08 - job_update_birthdays - ERROR (version 7.1.0.0-12, build 1 from 2017-05-16 17.18.02 by buildguy) : An error occurred executing this job entry :
2018/11/04 10:44:08 - job_update_birthdays - Couldn't get row from result set
2018/11/04 10:44:08 - job_update_birthdays - ResultSet is from UPDATE. No Data.
P.S. I am using the same credentials for both Pentaho and my Mysql client.
You're using a command that doesn't acutally returns data. In SQL, the INTO command will copy the data from the SELECT, INTO another table, what SQL is doing is probably just showing you the data that was copied to the target table.
Remove the INTO #bd_max clause from the query and run it.

SSIS Multicast Issue: Weird behavior

I am working on Integration services and came across a weird bug.
My data flow consist of:
-> DESTINATION
SOURCE -> SCRIPT_COMPONENT -> MULTICAST /
\-> DESTINATION
This error always occurs but differs the columns that is being addressed:
Error: 0xC0202009 at *STAFF_MIGRATION*, *STAFF_BASE* [627]: SSIS Error Code DTS_E_OLEDBERROR. An OLE DB error has occurred. Error code: 0x80040E21.
An OLE DB record is available. Source: "Microsoft SQL Server Native Client 10.0" Hresult: 0x80040E21 Description: "Multiple-step OLE DB operation generated errors. Check each OLE DB status value, if available. No work was done.".
Error: 0xC020901C at *STAFF_MIGRATION*, *STAFF_BASE* [627]: There was an error with input column "*LAST_UPDATED_BY*" (651) on input "OLE DB Destination Input" (640). The column status returned was: "The status value given to the provider was not valid.".
The column LAST_UPDATED_BY differs to sometimes LAST_UPDATE_DATE
The weird behaviour is that this doesnt occur if I add Data Viewers along the path to the destination.
Any ideas?
EDIT: I am running on VS/BIDS 2008 SPI and SQL Server 2008 (RTM) x64 SP1.
EDIT: I am now running on SQL Server SP3 and still the behavior occurs.
I think my theory could be right. When I place a data viewer, it means it needs to build the data set for me to view prior to insertion. So the values for the columns must be built. I found a solution by making the destination a fast load table where bulk insertion is intended. That would mean it would have time to build the data and would not encounter the invalid value for columns.. It was just a wild guess but it worked

OLE DB provider "Microsoft.Jet.OLEDB.4.0" for linked server "(null)"

ERROR MSG: The requested operation could not be performed because OLE DB provider "Microsoft.Jet.OLEDB.4.0" for linked server "(null)" does not support the required transaction interface.
I am stucked finding solutions for this error (see ERROR MSG).
Here is part of my code:
.....
INSERT INTO OPENROWSET('Microsoft.Jet.OLEDB.4.0', 'Excel 8.0;
Database=C:\Folder\file_output.xls',
'SELECT * FROM [Sheet1$]')
SELECT FROM FIELD1, FIELD2, FIELD3 dbo.MY_TABLE
WHERE TRANS_ID = 1
ORDER BY CTRL_NO ASC
.....
The above code is contained inside an SP... This is the last SP that is run in a series of SP calls.
Here is the chain/flow of execution: SP1->SP2->SP3->SP4 (assuming SP4 contains the above code)
But an error occurs as what the ERROR MSG suggests during the entire execution flow.
Here are the 2 scenarios that I've tried to test/trace the error.
- Run the the chain of SPs ----> result: error occurs
- Comment/Remove SP4, then run SP1->SP2->SP3 only. Then separately execute SP4. ----> result: okay
PLS. NOTE:I need to execute the SPs in flow.
There is no web/any front-end except SP1 is executed through SQL runner
I now wonder if this is a bug in MS SQL Server 2008 or I'm missing something.
If my question is still vague, kindly ask me for clarification. Thanks.
Try to check "Non transacted updates" option in "Server objects - Linked servers - Providers - Microsoft.Jet.OLEDB.4.0" properties. Maybe you will need to restart your sql server.