8000 Add periodicRecoveryPeriod property by nielsm5 · Pull Request #8615 · frankframework/frankframework · GitHub
[go: up one dir, main page]

Skip to content

Add periodicRecoveryPeriod property#8615

Merged
nielsm5 merged 15 commits intomasterfrom
feature/make-more-narayana-properties-configurable
Mar 25, 2025
Merged

Add periodicRecoveryPeriod property#8615
nielsm5 merged 15 commits intomasterfrom
feature/make-more-narayana-properties-configurable

Conversation

@nielsm5
Copy link
Member
@nielsm5 nielsm5 commented Mar 17, 2025

No description provided.

@nielsm5 nielsm5 requested review from evandongen and tnleeuw March 24, 2025 13:26
@nielsm5 nielsm5 marked this pull request as ready for review March 24, 2025 14:49

private static class UidCacheItem {
private int count = 1;
private Instant age = Instant.now();
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

age should be final

Suggested change
private Instant age = Instant.now();
private final Instant age = Instant.now();

Comment on lines +158 to +160
Uid uid = iter.iterate();

if (uid == null || Uid.nullUid().equals(uid)) break;
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Beetje rare manier om de loop te schrijven, kan het niet met een for loop?
(Lijkt me een copy-paste van elders 😉 )

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ja klopt, uit de narayana code zelf

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hoe raad ik het toch 😉

transactionmanager.jdbc.connection.testQuery=

## Use the native Narayana JDBC pooling mechanism instead of DBCP2
transactionmanager.narayana.jdbc.nativePoolingMechanism=false
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ik ben benieuwd wat de invloed op onze tests is als we dit op true zetten. Zowel in unit-tests (met echte database, niet H2) en in onze Tomcat+Narayana Larva tests.

ds = new NarayanaDataSource(xaDataSource, dataSourceName);
log.info("created non XA-enabled PoolingDataSource [{}]", ds);
NarayanaDataSource nds = new NarayanaDataSource(xaDataSource, dataSourceName);
nds.setConnectionPooling(useNativePoolingMechanism);
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is het een idee om deze mee te nemen als constructor params ipv setters?

@sonarqubecloud
Copy link

Quality Gate Failed Quality Gate failed

Failed conditions
5.5% Duplication on New Code (required ≤ 3%)
B Reliability Rating on New Code (required ≥ A)

See analysis details on SonarQube Cloud

Catch issues before they fail your Quality Gate with our IDE extension SonarQube for IDE

Copy link
Contributor
@tnleeuw tnleeuw left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

TransactionManager tests die eerder fout gingen met MS SQL Server gaan nu goed.

Enorme stap voorruit in de betrouwbaarheid van onze transaction-manager integratie en customizations.

@nielsm5 nielsm5 merged commit ac25dd1 into master Mar 25, 2025
24 of 26 checks passed
@nielsm5 nielsm5 deleted the feature/make-more-narayana-properties-configurable branch March 25, 2025 17:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Lots of 'Transaction xyz has 1 heuristic participant(s)' warnings in log

3 participants

0