-
-
Notifications
You must be signed in to change notification settings - Fork 2.7k
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
Enable oracle tests #5683
Enable oracle tests #5683
Conversation
0d89196
to
7a8f178
Compare
49f4521
to
eb3ac7b
Compare
Login into a local docker image works (after creating the jabref user) $ docker exec -it oracle-xe bash -c "source /home/oracle/.bashrc; /bin/bash -c '$ORACLE_HOME/bin/sqlplus jabref/jabref@localhost/XEPDB1'" Then both following statements work: SELECT ENTRY.SHARED_ID, ENTRY.TYPE, ENTRY.VERSION, F.ENTRY_SHARED_ID, F.NAME, F.VALUE FROM ENTRY inner join FIELD F on ENTRY.SHARED_ID = F.ENTRY_SHARED_ID order by SHARED_ID; SELECT "ENTRY"."SHARED_ID", "ENTRY"."TYPE", "ENTRY"."VERSION", F."ENTRY_SHARED_ID", F."NAME", F."VALUE" FROM "ENTRY" inner join "FIELD" F on "ENTRY"."SHARED_ID" = F."ENTRY_SHARED_ID" order by "SHARED_ID"; But not when using the oracleJDBC driver:
The simplest test case probably is: |
This reverts commit f97c8af.
a76d12b
to
6918e7b
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The changes look good. However, now the build takes > 30 min, from originally 3-4 mins. Because of this, I would propose to extract the oracle tests to a separate workflow that runs regularly every week instead of at each commit.
query.append(" where ") | ||
.append(escape("SHARED_ID")).append(" in (") | ||
.append(idListAsString) | ||
.append(")"); | ||
.append("?, ".repeat(sharedIDs.size() - 1)) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The previous version was more readable in my opinion. What was the reason for this change?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Made id consistent with other parts of DBMSProcessor (saw it in the last pull requests going through. I especially reused the idea of #5659 (comment)).
.github/workflows/tests-oracle.yml
Outdated
with: | ||
path: ~/.gradle/wrapper | ||
key: ${{ runner.os }}-gradle-${{ hashFiles('gradle/wrapper/gradle-wrapper.properties') }} | ||
- name: Cache Oracle XE downloads |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
[warning]Cache size of ~2455 MB (2573776080 B) is over the 400MB limit, not saving cache.
I think github will not increase the cache size that dramatically in the near future. Thus, this cache can be removed (which reduces the build time by 2 mins - not much but better than nothing).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
For caching, see the discussion here: actions/cache#6
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Result of the discussion:
There may be another update soon to up the limit a little (~700MB or so), [...] We would still have the 2GB per repo limit until we integrate billing, so there would be some concern about thrashing the cache if the individual limit matched the per repo limit.
Enable test on Oracle XE. Fixes JabRef#151.
Oracle XE encrypted available at files.jabref.org. We have the password stored at koppor's KeePass and in the environment variable during the build. Thus, it can be decrypted during the test, but (hopefully) not by other persons.