Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Error writing to TIMESTAMP/TIME WITH TIME ZONE array [CORE6303] #6545

Closed
firebird-automations opened this issue May 14, 2020 · 8 comments
Closed

Comments

@firebird-automations
Copy link
Collaborator

Submitted by: Tony Whyman (twhyman)

I have set up a test of TIME/TIMESTAMP WITH TIME ZONE arrays. The test is failing when putslice is called, with the error message reporting an error writing data to the connection (send_packet/send).

The test table is created using:

Create Table FB4TestData_ARTZ (
RowID Integer not null,
TimeCol TIME WITH TIME ZONE [0:16],
TimestampCol TIMESTAMP WITH TIME ZONE [0:16],
Primary Key(RowID)
);

The test is run by filling each array with 17 values and then writing the array buffer to the server using "putslice". The SDL is identical to a known good SDL block for an array of TIMESTAMP (WITHOUT TIME ZONE) except that the data type is blr_sql_time_tz or blr_timestamp_tz as appropriate. I have seen a connection drop previously when using putslice when the SDL is mis-formatted. However, I can see no problem in this case.

The one oddity I can see is that the element size being returned from the metadata is "8" for a TIME WITH TIME ZONE array and "12" for a "TIMESTAMP WITH TIME ZONE" array. Given the data structures, I would have expected "6" and "10". However, I have also checked the metadata for non-array TIME WITH TIME ZONE and TIMESTAMP WITH TIME ZONE columns and these also return "8" and "12" respectively. If I execute a 'SET BIND OF TIME ZONE TO EXTENDED' statement, then the non-array column sizes remain as "8" and "12" even though the data types have changed to SQL_TIME_TZ_EX and SQL_TIMESTAMP_TZ_EX, respectively. I presume that field alignment is being forced to a four byte boundary.

Commits: 23906ef

====== Test Details ======

Deferred until FDB will support new TIME WITH TIMEZONE data type introduced in FB 4.x.
Letter from Alex 21.07.2020 23:43

@firebird-automations
Copy link
Collaborator Author

Modified by: Tony Whyman (twhyman)

summary: Error writing to TIMESTANP/TIME WITH TIME ZONE array => Error writing to TIMESTAMP/TIME WITH TIME ZONE array

@firebird-automations
Copy link
Collaborator Author

Modified by: @AlexPeshkoff

assignee: Alexander Peshkov [ alexpeshkoff ]

@firebird-automations
Copy link
Collaborator Author

Modified by: @AlexPeshkoff

Link: This issue duplicates CORE6302 [ CORE6302 ]

@firebird-automations
Copy link
Collaborator Author

Commented by: @AlexPeshkoff

Thats's almost for sure same bug

@firebird-automations
Copy link
Collaborator Author

Modified by: @AlexPeshkoff

Link: This issue duplicates CORE6302 [ CORE6302 ] =>

@firebird-automations
Copy link
Collaborator Author

Modified by: @AlexPeshkoff

status: Open [ 1 ] => Resolved [ 5 ]

resolution: Fixed [ 1 ]

Fix Version: 4.0 RC 1 [ 10930 ]

@firebird-automations
Copy link
Collaborator Author

Modified by: @pavel-zotov

status: Resolved [ 5 ] => Resolved [ 5 ]

QA Status: No test => Deferred

Test Details: Deferred until FDB will support new TIME WITH TIMEZONE data type introduced in FB 4.x.
Letter from Alex 21.07.2020 23:43

@firebird-automations
Copy link
Collaborator Author

Modified by: @pavel-zotov

status: Resolved [ 5 ] => Closed [ 6 ]

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants