Merge pull request #14319 from Budibase/test-oracle

Follow-up to Oracle fix PR
This commit is contained in:
Sam Rose 2024-08-07 16:51:36 +01:00 committed by GitHub
commit d372ae6c1b
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 9 additions and 3 deletions

View File

@ -700,6 +700,8 @@ class InternalBuilder {
const direction =
value.direction === SortOrder.ASCENDING ? "asc" : "desc"
// TODO: figure out a way to remove this conditional, not relying on
// the defaults of each datastore.
let nulls: "first" | "last" | undefined = undefined
if (
this.client === SqlClient.POSTGRES ||

View File

@ -1596,9 +1596,6 @@ describe.each([
// Our bigints are int64s in most datasources.
let BIG = "9223372036854775807"
if (name === DatabaseName.ORACLE) {
// BIG = "9223372036854775808"
}
beforeAll(async () => {
table = await createTable({

View File

@ -506,6 +506,13 @@ class OracleIntegration extends Sql implements DatasourcePlus {
password: this.config.password,
connectString,
}
// We set the timezone of the connection to match the timezone of the
// Budibase server, this is because several column types (e.g. time-only
// timestamps) do not store timezone information, so to avoid storing one
// time and getting a different one back we need to make sure the timezone
// of the server matches the timezone of the database. There's an assumption
// here that the server is running in the same timezone as the database.
const tz = Intl.DateTimeFormat().resolvedOptions().timeZone
const connection = await oracledb.getConnection(attributes)
await connection.execute(`ALTER SESSION SET TIME_ZONE = '${tz}'`)