Project

General

Profile

Activity

From 01/01/2023 to 01/30/2023

01/30/2023

05:43 PM Database Feature #7037: remove dirty share manager
AFAICT, your assessment of how @DirtyShareSupport@ works currently is correct.
It seems we need to support the fol...
Eric Faulhaber
03:03 PM Database Feature #7037: remove dirty share manager
In @DirtyShareSupport@ we effectively have @forceDirtyShare@ always enabled, and, correct me if I'm wrong, no convert... Stanislav Lomany
01:01 PM Database Feature #7037: remove dirty share manager
Stas, I'm sorry I did not remember this existing implementation. How does this overlap/conflict/differ with your rece... Eric Faulhaber
12:58 PM Database Feature #7037: remove dirty share manager
Stanislav Lomany wrote:
> As far as I understand, the following should happen when dirty sharing is disabled in the ...
Eric Faulhaber
11:10 AM Database Feature #7037: remove dirty share manager
One more thing: what cases that should be tested to make sure then remain working after cross-session dirty sharing h... Stanislav Lomany
10:37 AM Base Language Feature #6649: improve the performance or SourceNameMapper runtime
I checked in various performance changes in 6129b revision 14394. Please review. Hynek Cihlar
09:52 AM Database Feature #7061 (WIP): Enable the use of lazy result sets in H2
Alexandru Lungu
09:42 AM Database Feature #6371: implement SAVE CACHE statement
The documentation for this task is in [[p2j:Non-Standard Save Cache Implementation]]. Greg Shah
09:11 AM Database Support #7058: get the FWD fork of the H2 code base under version control
I'm glad the existing scripts worked. Greg Shah
08:33 AM Database Support #7058 (WIP): get the FWD fork of the H2 code base under version control
Added version control for our H2 fork:
* redesigned @code/p2j_repo/fwd-h2@ to honor the @active/dead/merged/trunk@ p...
Alexandru Lungu
06:52 AM Database Support #7058: get the FWD fork of the H2 code base under version control
Greg Shah wrote:
> > Should we use the same branch naming convention (task number + ascending letters) as we use in ...
Alexandru Lungu
08:50 AM Runtime Infrastructure Feature #6377: provide tooling (and UI in the admin interface) to manage appserver agents (start/...
I would prefer to implement this using a REST API. We will provide a CLI (command line interface) and would probably... Greg Shah
07:24 AM Runtime Infrastructure Bug #5701: logfile names for -O outputToFile use the spawner pid instead of the Java (FWD client ...
Galya, please describe how you are running a program on the appserver. A batch program executes its 4GL program imme... Constantin Asofiei
06:40 AM Runtime Infrastructure Bug #5701: logfile names for -O outputToFile use the spawner pid instead of the Java (FWD client ...
So configuration-wise @appserver@ turns into batch if I remove @<node-attribute name="appserver" value="app_server"/>... Galya B
05:05 AM Runtime Infrastructure Bug #5701: logfile names for -O outputToFile use the spawner pid instead of the Java (FWD client ...
Galya Bogdanova wrote:
> Greg, Constantin, I'll need some clarifications here:
> 1. What do you refer to as agent l...
Constantin Asofiei
03:25 AM Runtime Infrastructure Bug #5701: logfile names for -O outputToFile use the spawner pid instead of the Java (FWD client ...
Greg, Constantin, I'll need some clarifications here:
1. What do you refer to as agent logs in FWD? @outputToFile@ i...
Galya B
07:03 AM Database Bug #6829 (WIP): H2 forces re-parse of all prepared statements when metadata is changed
Danut, please strictly refer to #6829-1 for the moment: consider the H2 performance of reparsing prepared statements ... Alexandru Lungu
03:17 AM Database Feature #6444: dataset improvements
Marian Edu wrote:
> Igor Skornyakov wrote:
> > Marian,
> > The description of the @SYNCHRONIZE@ method semantics i...
Igor Skornyakov
03:12 AM Database Feature #6444: dataset improvements
Igor Skornyakov wrote:
> Marian,
> The description of the @SYNCHRONIZE@ method semantics in the OE documentation lo...
Marian Edu

01/28/2023

03:54 AM Database Feature #6444: dataset improvements
Marian,
The description of the @SYNCHRONIZE@ method semantics in the OE documentation looks not very clear for me.
...
Igor Skornyakov
03:35 AM Database Feature #6444: dataset improvements
> > And generally, please place the @{@ on a new line (FWD coding standard). I forgot to add this in my previous revi... Igor Skornyakov
02:56 AM Database Feature #6444: dataset improvements
Ovidiu Maxiniuc wrote:
> I looked in the log of FWD repository and, indeed it shows I added some implementation for ...
Igor Skornyakov
08:22 PM Database Feature #6444: dataset improvements
I looked in the log of FWD repository and, indeed it shows I added some implementation for @synchronize@ method (and ... Ovidiu Maxiniuc
11:51 PM Database Feature #6371: implement SAVE CACHE statement
Rev 6129b/14392 fixes issues with setting initial values in the DMO interface. It also pulls in a newer MariaDB JDBC ... Eric Faulhaber

01/27/2023

01:18 PM Base Language Feature #7082: Improve converted call site names
I think we can provide this as an option, though if we do we will want to reduce some of the text (maybe remove the @... Greg Shah
12:57 PM Base Language Feature #7082: Improve converted call site names
I suggest to make call site names more readable. E.g. I have to click each of this sites to understand what this code... Stanislav Lomany
12:51 PM Base Language Feature #7082 (New): Improve converted call site names
Stanislav Lomany
12:08 PM Database Feature #6444: dataset improvements
Retrofitted Ovidio's changes for the @DynamicQueryHelper@ from 6129b to 6444a.
This resolves #6444-115. Reworked @Bu...
Igor Skornyakov
09:57 AM Database Feature #6444: dataset improvements
Indeed, #6444-115 does not manifest itself in 6129b.
However, there are a lot of differences between this branch and...
Igor Skornyakov
07:30 AM Database Feature #6444: dataset improvements
Ovidiu Maxiniuc wrote:
> I did a quick review of your commits up to 14485/6444a since 14480:
> AbstractQuery, Compo...
Igor Skornyakov
02:24 AM Database Feature #6444: dataset improvements
Ovidiu Maxiniuc wrote:
> Igor Skornyakov wrote:
> > I've encountered a strange problem. Consider the following prog...
Igor Skornyakov
10:44 AM Database Feature #6371: implement SAVE CACHE statement
I added same filtering for columns and indexes, it should save some CPU time. Also, MariaDB returns @boolean@ as @bit... Boris Schegolev
10:17 AM Database Feature #6371: implement SAVE CACHE statement
Filtering is resolved - see revision 6129b/14389. It also removes the TODO I had there. Boris Schegolev
07:21 AM Database Feature #6371: implement SAVE CACHE statement
Boris Schegolev wrote:
> I pushed 2 commits into 6129b - 14385 and 14386. Now our save-cache test programs operate o...
Eric Faulhaber
10:44 AM Runtime Infrastructure Bug #5701: logfile names for -O outputToFile use the spawner pid instead of the Java (FWD client ...
I meant both cases. It sounds like we are OK there, if I understand your points.
Do we have the same control over...
Greg Shah
10:38 AM Runtime Infrastructure Bug #5701: logfile names for -O outputToFile use the spawner pid instead of the Java (FWD client ...
Greg Shah wrote:
> > Galya, I've tested in OpenEdge and only @MESSAGE@ statement (with or without @VIEW-AS ALERT-BOX...
Constantin Asofiei
09:59 AM Runtime Infrastructure Bug #5701: logfile names for -O outputToFile use the spawner pid instead of the Java (FWD client ...
> Galya, I've tested in OpenEdge and only @MESSAGE@ statement (with or without @VIEW-AS ALERT-BOX@) end up in the age... Greg Shah
09:53 AM Runtime Infrastructure Bug #5701: logfile names for -O outputToFile use the spawner pid instead of the Java (FWD client ...
Galya, I've tested in OpenEdge and only @MESSAGE@ statement (with or without @VIEW-AS ALERT-BOX@) end up in the agent... Constantin Asofiei
09:09 AM Runtime Infrastructure Bug #5701 (Test): logfile names for -O outputToFile use the spawner pid instead of the Java (FWD ...
I'm uploading the latest diff that includes the win changes. They are committed to 5701a as well. I'll be testing tho... Galya B
05:47 AM Runtime Infrastructure Bug #5701: logfile names for -O outputToFile use the spawner pid instead of the Java (FWD client ...
Starting appserver as scheduled batch initializes @ThinClient@, @BatchDriver@, @OutputManager@, @ErrorWriterBatch@, c... Galya B
09:16 AM Database Feature #7064: Analyze the performance impact of the implicit meta schema in H2
> org.h2.engine.Database.meta only stores information from non-temporary sessions, which we do not use
Although we...
Greg Shah
08:34 AM Database Feature #7064 (WIP): Analyze the performance impact of the implicit meta schema in H2
Alexandru Lungu wrote:
> * H2 generates an implicit @INFORMATION_SCHEMA@ schema on database creation. This schema co...
Radu Apetrii
08:04 AM Base Language Feature #3853: implement LOG-MANAGER runtime
I've found a workaround fix for batch writing all @stdout@ through @ErrorWriterBatch#displayError()@, which messed up... Galya B
07:58 AM Database Feature #7062 (WIP): Direct access to H2 internals to solve basic queries
I've done some consistent implementation for the @FIND tt WHERE recid(tt) = 2@ use-case. However, I am facing some li... Alexandru Lungu
03:02 AM Runtime Infrastructure Feature #7080: expose all admin APIs via REST
A small clarification. The Admin remoting isn't based on @RemoteObject@ since the GWT rewrite.
There are three (GW...
Hynek Cihlar
10:58 PM Database Feature #6348: implement support for MariaDB
Indeed, there were several updates to the dialects. But there are some unfinished features:
* what I know for sure i...
Ovidiu Maxiniuc

01/26/2023

06:36 PM Runtime Infrastructure Feature #7080: expose all admin APIs via REST
Moving to a REST API will provide several benefits.
* It will be a simpler and cleaner model than the current sync...
Greg Shah
06:20 PM Runtime Infrastructure Feature #7080 (Test): expose all admin APIs via REST
Greg Shah
06:20 PM Database Feature #6444: dataset improvements
Igor Skornyakov wrote:
> I've encountered a strange problem. Consider the following program:
> [...]
> It works fi...
Ovidiu Maxiniuc
01:45 PM Database Feature #6444: dataset improvements
Finished support for the @SYNCHRONIZE@ method, albeit not in a very efficient way (see #6444-115, #6444-116).
Comm...
Igor Skornyakov
11:53 AM Database Feature #6444: dataset improvements
Igor Skornyakov wrote:
> What is the right way to retrieve the value of the primary key from the @BufferImpl@ instan...
Igor Skornyakov
10:02 AM Database Feature #6444: dataset improvements
What is the right way to retrieve the value of the primary key from the @BufferImpl@ instance.
Thank you.
Igor Skornyakov
07:23 AM Database Feature #6444: dataset improvements
The @HQLPrepocessor.getFindByRowid@ method looks strange
# It checks only the first parameter. In my test the @rowid...
Igor Skornyakov
05:40 AM Database Feature #6444: dataset improvements
I've found a workarount for #6444-115, but at the cost of more complicated (and expensive) query:... Igor Skornyakov
04:35 AM Database Feature #6444: dataset improvements
I've encountered a strange problem.
Consider the following program:...
Igor Skornyakov
05:20 PM Database Feature #6371: implement SAVE CACHE statement
I pushed 2 commits into 6129b - 14385 and 14386. Now our save-cache test programs operate on PostgreSQL and MariaDB e... Boris Schegolev
06:28 AM Database Feature #6371: implement SAVE CACHE statement
I've manually ported the SAVE CACHE feature from trunk rev 14483 to 6129b and committed that as 6129b/14383. I have d... Eric Faulhaber
03:53 AM Database Feature #6371: implement SAVE CACHE statement
Boris, we were discussing the @datetime-tz@ implementation yesterday, but there is still a TODO in the code for the I... Eric Faulhaber
03:48 AM Database Feature #6371: implement SAVE CACHE statement
I committed 6371a/14458, which:
* implements thread safety to prevent concurrent schema checking and DMO generatio...
Eric Faulhaber
02:09 PM Database Feature #7037: remove dirty share manager
As far as I understand, the following should happen when dirty sharing is disabled in the directory:
# Dirty databa...
Stanislav Lomany
02:02 PM Conversion Tools Feature #3883: eclipse plug for developing 4GL code using FWD including editing, syntax checks, r...
In April 2022, the official word is that "Eclipse Theia is the next generation of Eclipse!":https://eclipse-foundatio... Greg Shah
01:54 PM Conversion Tools Feature #6319: IntelliJ plugin
The long term roadmap for IntelliJ is not clear, I can't find it published anywhere. If anyone can point me to somet... Greg Shah
10:35 AM Runtime Infrastructure Bug #5701: logfile names for -O outputToFile use the spawner pid instead of the Java (FWD client ...
Greg Shah wrote:
> Eugenie: Please review.
The change looks good for me.
Eugenie Lyzenko
08:15 AM Runtime Infrastructure Bug #5701: logfile names for -O outputToFile use the spawner pid instead of the Java (FWD client ...
Eugenie: Please review. Greg Shah
08:05 AM Runtime Infrastructure Bug #5701 (Review): logfile names for -O outputToFile use the spawner pid instead of the Java (FW...
Galya B
08:01 AM Runtime Infrastructure Bug #5701: logfile names for -O outputToFile use the spawner pid instead of the Java (FWD client ...
Find attached a good solution to the wrong pid in @outputToFile@ name. It simplifies the spawner logic by removing a ... Galya B
10:13 AM Database Bug #7035: Extract query parameters from statically converted FQL
Dănuț Filimon wrote:
> What is the purpose of @inlineSubstitutionParameter@? The modifications I made for extracting...
Alexandru Lungu
10:06 AM Base Language Feature #6820: reduce String.toLowerCase and toUpperCase usage and String instances
The use of @String.toLowerCase@ and @toUpperCase@ in @P2JField.computeHash - 90k@ and @Validation.setUniqueQueryPara... Hynek Cihlar
09:58 AM Base Language Feature #6820: reduce String.toLowerCase and toUpperCase usage and String instances
The use of @toLowerCase@ and @toUpperCase@ in @h2.Function.getSimpleValue - 178k@ is valid there. Hynek Cihlar
09:04 AM Base Language Feature #6421: finish GENERATE-RANDOM-KEY support
Create a task branch (6421a) and you can commit changes there. Greg Shah
08:52 AM Base Language Feature #6421: finish GENERATE-RANDOM-KEY support
I read the encryption algorithm by using @SecurityPolicyManager.getSymmetricEncryptionAlgorithm().toStringMessage()@.... Theodoros Theodorou
08:21 AM Database Feature #6995: possibly support NO-UNDO temporary tables directly in H2
I've included in H2 a flag for temporary tables that shows whether or not a table is defined with @no-undo@. The main... Radu Apetrii
04:12 AM Database Feature #7076: make CAN-FIND avoid hydration
I found Ovidiu's comment in #5453-2 relevant for this task. Alexandru Lungu

01/25/2023

05:17 PM Database Feature #7076: make CAN-FIND avoid hydration
Let's go for the quick win. Greg Shah
04:43 PM Database Feature #7076: make CAN-FIND avoid hydration
It does, if we implement it as a sub-select (i.e., when it is a nested CAN-FIND in another query's WHERE clause).
...
Eric Faulhaber
02:59 PM Database Feature #7076: make CAN-FIND avoid hydration
I assume we already do this, but just in case, does CAN-FIND avoid hydration? Greg Shah
02:58 PM Database Feature #7076 (Closed): make CAN-FIND avoid hydration
Greg Shah
04:13 PM Base Language Feature #6649: improve the performance or SourceNameMapper runtime
Greg Shah wrote:
> 3821c?
I meant 6129b. 3821c has burned into my cerebral cortex after the years working with th...
Hynek Cihlar
04:08 PM Base Language Feature #6649: improve the performance or SourceNameMapper runtime
3821c? Greg Shah
03:48 PM Base Language Feature #6649: improve the performance or SourceNameMapper runtime
3821c revision 14382 introduces caching of resolved procedure internal entries. It speeds up tests in a large custome... Hynek Cihlar
04:07 PM Database Feature #6371: implement SAVE CACHE statement
Implemented validation "except for the implicit primary key index, the primary key may only appear at the end of a no... Boris Schegolev
02:28 PM Database Feature #6813: analyze and improve performance of dynamic conversion of temp-tables and queries
> > For example, the @lvalue@ rule will be doing constant lookups of a wide range of possible matches while the actua... Greg Shah
02:10 PM Database Feature #6813: analyze and improve performance of dynamic conversion of temp-tables and queries
In regard to writing things to disk for persistence between server runs, we could write the generated DMOs (bytecode)... Greg Shah
01:47 PM Database Feature #6813: analyze and improve performance of dynamic conversion of temp-tables and queries
Greg Shah wrote:
> I suspect there is still some significant improvement that can be made to the performance. The c...
Ovidiu Maxiniuc
01:37 PM Database Feature #6813: analyze and improve performance of dynamic conversion of temp-tables and queries
Greg Shah wrote:
> I have another idea, which I think should be a "game changer". Let's write out the generated cla...
Ovidiu Maxiniuc
01:06 PM Base Language Feature #3853: implement LOG-MANAGER runtime
I've found an unexpected behavior with batch execution. @stdout@ is displayed using @ErrorManager.displayError(lineOu... Galya B
10:25 AM Database Feature #6928: H2 UPDATE performance improvement
I added a patch that fixes the problem that I found earlier (and another one that I found while testing). Long story ... Radu Apetrii
05:36 AM Database Feature #6928: H2 UPDATE performance improvement
Radu, please debug this and fix it. Constantin Asofiei
05:34 AM Database Feature #6928: H2 UPDATE performance improvement
While working on another task, I stumbled upon an issue. With fwd-h2 rev.7 it worked fine, *but in rev.8 there seems ... Radu Apetrii
07:37 AM Base Language Bug #7073 (New): Launching non-interactive program creates JNI core dump in process_linux.c due t...
Greg Shah
11:25 PM Base Language Bug #7073: Launching non-interactive program creates JNI core dump in process_linux.c due to ncurses
Greg Shah wrote:
> That failing code is not code that is checked in to trunk. It is specific to *your system*. You...
Roger Borrello
07:29 PM Base Language Bug #7073 (Rejected): Launching non-interactive program creates JNI core dump in process_linux.c ...
That failing code is not code that is checked in to trunk. It is specific to *your system*. Your logging is broken. Greg Shah
06:11 AM Database Feature #7061: Enable the use of lazy result sets in H2
Eric Faulhaber wrote:
> Alexandru Lungu wrote:
>
> > Adopting this idea means replacing @ProgressiveResults@ with...
Alexandru Lungu
05:35 AM Database Feature #7061: Enable the use of lazy result sets in H2
Alexandru Lungu wrote:
> Adopting this idea means replacing @ProgressiveResults@ with @ScrollingResults@ backed by...
Eric Faulhaber
06:09 AM Database Bug #7035: Extract query parameters from statically converted FQL
Dănuț Filimon wrote:
> Are there any cases where @NUM_LITERAL, DEC_LITERAL, STRING@ should not be substituted?
...
Eric Faulhaber
05:59 AM Database Bug #7035: Extract query parameters from statically converted FQL
I wrote an implementation for that makes use of the @FQLPreprocessor.mainWalk@ method to parse the where clause AST a... Dănuț Filimon
05:38 AM Database Feature #7063: Support FIRST/LAST join directly in H2
Eric Faulhaber wrote:
> When converting FIND/FIRST LAST, whether as a joined query component (i.e., @RandomAccessQue...
Alexandru Lungu

01/24/2023

06:57 PM Base Language Bug #7073: Launching non-interactive program creates JNI core dump in process_linux.c due to ncurses
With logging added to @process_linux.c@ we see it occur in @ fprintf(fp, "pseudoTerminalWait: move cursor part 2... Roger Borrello
06:56 PM Base Language Bug #7073: Launching non-interactive program creates JNI core dump in process_linux.c due to ncurses
@uast/util/process_launch_helper.p@ can be used.
Using Swing, run the program, and pass in any command, like *ls*
...
Roger Borrello
06:50 PM Base Language Bug #7073 (New): Launching non-interactive program creates JNI core dump in process_linux.c due t...
Roger Borrello
05:32 PM Database Feature #7063: Support FIRST/LAST join directly in H2
Alexandru Lungu wrote:
> An alternative to this technique would be to introduce a @FIRST JOIN@ or @LAST JOIN@ into...
Eric Faulhaber
11:10 AM Database Feature #6444: dataset improvements
Eric Faulhaber wrote:
> Igor, have you ported the changes needed from 6129b into 6444a? Where do you feel we now sta...
Igor Skornyakov
10:53 AM Database Feature #6444: dataset improvements
Igor, have you ported the changes needed from 6129b into 6444a? Where do you feel we now stand on % Done for this iss... Eric Faulhaber
10:49 AM Database Feature #6628: port PostgreSQL native user defined functions to MariaDB
Eric Faulhaber wrote:
> Igor, is this task finished, other than implementing your idea for error handling? How much ...
Igor Skornyakov
10:44 AM Database Feature #6628: port PostgreSQL native user defined functions to MariaDB
Igor, is this task finished, other than implementing your idea for error handling? How much effort do you think it is... Eric Faulhaber
10:40 AM Database Feature #6348: implement support for MariaDB
Ovidiu, as of 3821c/14182, we have this issue marked as 60% done. Many changes have been made since then, including l... Eric Faulhaber
06:17 AM Database Feature #7064: Analyze the performance impact of the implicit meta schema in H2
Alexandru Lungu wrote:
> Now that I am reading #7064-1 again, it needs some rephrasing indeed.
> I am mostly referr...
Igor Skornyakov
05:48 AM Database Feature #7064: Analyze the performance impact of the implicit meta schema in H2
Igor Skornyakov wrote:
> Sorry, I do not understand what you mean. As far as I remember the META database contains i...
Alexandru Lungu
06:13 AM Database Feature #7066: Implement multi-table indexed query in H2
You can simply check @prg.h2.result.SortOrder.sort@. This holds the @ORDER BY@ clause and is triggered only when H2 n... Alexandru Lungu
02:31 AM Database Feature #7066: Implement multi-table indexed query in H2
Alexandru, what H2 methods are responsible for this re-sorting of the rows? I want to check in the profiler. Constantin Asofiei
05:16 AM Database Feature #7062: Direct access to H2 internals to solve basic queries
Greg Shah wrote:
> This is really interesting. For temp-tables (and using H2 for a permanent database), it is conce...
Alexandru Lungu
02:53 AM Base Language Feature #6649: improve the performance or SourceNameMapper runtime
Constantin Asofiei wrote:
> Hynek Cihlar wrote:
> > Constantin Asofiei wrote:
> > > Bellow are the backtraces for ...
Hynek Cihlar
02:38 AM Base Language Feature #6649: improve the performance or SourceNameMapper runtime
Hynek Cihlar wrote:
> Constantin Asofiei wrote:
> > Bellow are the backtraces for @SourceNameMapper.getInternalEntr...
Constantin Asofiei
02:37 AM Base Language Feature #6649: improve the performance or SourceNameMapper runtime
Constantin Asofiei wrote:
> Bellow are the backtraces for @SourceNameMapper.getInternalEntry@ - these are reduced af...
Hynek Cihlar
02:24 AM Base Language Feature #6649: improve the performance or SourceNameMapper runtime
Bellow are the backtraces for @SourceNameMapper.getInternalEntry@ - these are reduced after the InvokeConfig call-sit... Constantin Asofiei
07:42 PM Database Feature #7020: always use "expanded" extent fields
Thank you Constantin for the link to wiki. I was able to identify the cause of the NPE. When retrieving meta informat... Ovidiu Maxiniuc

01/23/2023

06:57 PM Database Feature #6371: implement SAVE CACHE statement
I pushed a fix for the issue with removing columns. Also fixed another minor thing. See revision 14456. Boris Schegolev
04:50 PM Database Bug #6829: H2 forces re-parse of all prepared statements when metadata is changed
Alexandru Lungu wrote:
> Constantin Asofiei wrote:
> > Alexandru, I've uncommited 6129b rev 14378. The changes in t...
Eric Faulhaber
04:38 AM Database Bug #6829: H2 forces re-parse of all prepared statements when metadata is changed
I created #7060 to target exactly the issue of wildcard usage, as a performance/memory management standalone improvem... Alexandru Lungu
04:14 AM Database Bug #6829: H2 forces re-parse of all prepared statements when metadata is changed
Eric Faulhaber wrote:
> Alexandru Lungu wrote:
>
> > Committed 6129b/rev. 14378. This includes no alias columns f...
Alexandru Lungu
03:17 PM Database Support #7058: get the FWD fork of the H2 code base under version control
> Should we use the same branch naming convention (task number + ascending letters) as we use in FWD? It probably mak... Greg Shah
03:11 PM Database Feature #7064: Analyze the performance impact of the implicit meta schema in H2
Sorry, I do not understand what you mean. As far as I remember the META database contains information about permanent... Igor Skornyakov
07:22 AM Database Feature #7064: Analyze the performance impact of the implicit meta schema in H2
There is a so called @INFORMATION_SCHEMA@ in H2 which is implicitly built: once for a shared temp-database and multip... Alexandru Lungu
07:02 AM Database Feature #7064 (Rejected): Analyze the performance impact of the implicit meta schema in H2
Alexandru Lungu
02:52 PM Database Feature #7062: Direct access to H2 internals to solve basic queries
This is really interesting. For temp-tables (and using H2 for a permanent database), it is conceptually close to the... Greg Shah
06:23 AM Database Feature #7062: Direct access to H2 internals to solve basic queries
I've done slim experiments with the H2 internals to understand how easy/fast is to interface directly with H2. I have... Alexandru Lungu
05:38 AM Database Feature #7062 (Closed): Direct access to H2 internals to solve basic queries
Alexandru Lungu
12:33 PM Database Feature #6813: analyze and improve performance of dynamic conversion of temp-tables and queries
I have another idea, which I think should be a "game changer". Let's write out the generated classes (and any critic... Greg Shah
12:28 PM Database Feature #6813: analyze and improve performance of dynamic conversion of temp-tables and queries
I suspect there is still some significant improvement that can be made to the performance. The core parsing might be... Greg Shah
12:02 PM Base Language Feature #6649: improve the performance or SourceNameMapper runtime
Constantin, I didn't find any major performance issues profiling the big customer application. Can you please share m... Hynek Cihlar
09:25 AM Database Feature #7066: Implement multi-table indexed query in H2
As far as I could investigate H2, it seems like multi-table queries are severely lacking indexed traversal of joined ... Alexandru Lungu
09:08 AM Database Feature #7066 (WIP): Implement multi-table indexed query in H2
Alexandru Lungu
06:47 AM Database Feature #7063: Support FIRST/LAST join directly in H2
I recall spending some time in #6196 to identify a clean and short way to encode the 4GL FIRST/LAST semantics using S... Alexandru Lungu
06:24 AM Database Feature #7063 (New): Support FIRST/LAST join directly in H2
Alexandru Lungu
05:36 AM Database Feature #7061: Enable the use of lazy result sets in H2
*Prerequisites*
FWD converts most of the index-sorted single-table @FOR@ queries into @AdaptiveQuery@. With the effo...
Alexandru Lungu
04:40 AM Database Feature #7061 (Closed): Enable the use of lazy result sets in H2
Alexandru Lungu
04:50 AM Database Feature #7060: Consider using wildcard selection to reduce SQL size
Please note that this change may require extensive testing and changes in some non-obvious places.
For example in m...
Igor Skornyakov
04:35 AM Database Feature #7060: Consider using wildcard selection to reduce SQL size
There is initial work in #6829 on introducing wildcard selection (using @*@ symbol). This can reduce the size of an S... Alexandru Lungu
04:17 AM Database Feature #7060 (Closed): Consider using wildcard selection to reduce SQL size
Alexandru Lungu
02:53 AM Database Feature #6816: improve PreselectQuery.assembleHQL
Alexandru Lungu wrote:
> Looks good, no concerns.
Done. Committed to 6129b, rev. 14379.
Radu Apetrii

01/20/2023

05:49 PM Database Feature #6371: implement SAVE CACHE statement
I found the root cause for the error you described. Luckily, it's not caching or so, but just a logical mistake (Sche... Boris Schegolev
02:27 PM Database Feature #7020: always use "expanded" extent fields
Thank you for doing the tests.
May I have some details on this abend? An error message or a stack trace / log file?
...
Ovidiu Maxiniuc
03:41 AM Database Feature #7020: always use "expanded" extent fields
I've tested 7020a/14377 and there is an abend with a customer's application.
Constantin Asofiei
12:19 AM Database Feature #7020: always use "expanded" extent fields
Eric Faulhaber wrote:
> On the dynamic index issue, we will have the variable's value at runtime. Isn't this enough ...
Ovidiu Maxiniuc
01:31 PM Database Bug #7059: FWD shouldn't raise errors for non-numeric extent indexes.
The original issue was #7043-4. Copied from there:... Stanislav Lomany
01:29 PM Database Bug #7059 (WIP): FWD shouldn't raise errors for non-numeric extent indexes.
Stanislav Lomany
12:57 PM Database Bug #6829: H2 forces re-parse of all prepared statements when metadata is changed
Alexandru, I've uncommited 6129b rev 14378. The changes in this rev are in the attached patch. Constantin Asofiei
12:42 PM Database Bug #6829: H2 forces re-parse of all prepared statements when metadata is changed
Alexandru Lungu wrote:
> Committed 6129b/rev. 14378. This includes no alias columns for all SELECT queries and wil...
Eric Faulhaber
10:54 AM Database Bug #6829: H2 forces re-parse of all prepared statements when metadata is changed
Alexandru Lungu wrote:
> Greg Shah wrote:
> > > However, we CAN do an inspection before the FQL->SQL conversion and...
Constantin Asofiei
10:46 AM Database Bug #6829: H2 forces re-parse of all prepared statements when metadata is changed
Greg Shah wrote:
> > However, we CAN do an inspection before the FQL->SQL conversion and, if there are none of these...
Alexandru Lungu
12:37 PM Database Support #7058: get the FWD fork of the H2 code base under version control
We have entered a new phase of H2 performance improvement work, and there is already a set of changes we have been ma... Eric Faulhaber
12:31 PM Database Support #7058 (Closed): get the FWD fork of the H2 code base under version control
Eric Faulhaber
12:29 PM Database Feature #6928: H2 UPDATE performance improvement
Alexandru Lungu wrote:
> H2 rev. 7 is mostly targeting progressively fetched (using LIMIT) multi-table @AdaptiveQuer...
Eric Faulhaber
11:37 AM Database Feature #6928: H2 UPDATE performance improvement
H2 rev. 7 is mostly targeting progressively fetched (using LIMIT) multi-table @AdaptiveQuery@. This is not yet part o... Alexandru Lungu
09:28 AM Database Feature #6928: H2 UPDATE performance improvement
H2's UPDATE command was profiled and improved to avoid object allocations and unnecessary iterations. This is in fwd... Constantin Asofiei
10:38 AM Database Feature #6816: improve PreselectQuery.assembleHQL
Looks good, no concerns. Alexandru Lungu
09:33 AM Database Feature #6816: improve PreselectQuery.assembleHQL
I think this can be committed to 6129b. Alexandru, any concerns? Constantin Asofiei
06:52 AM Database Feature #6816: improve PreselectQuery.assembleHQL
With Alex's help, I've managed to find an example that results in that error. The problem was my misinterpretation of... Radu Apetrii
03:11 AM Database Feature #6816: improve PreselectQuery.assembleHQL
I've tried the patch with a customer application and there is an abend:... Constantin Asofiei
10:34 AM Database Support #6714 (Review): check if there is an optimization opportunity when copying temp-tables ba...
Alexandru Lungu
09:53 AM Database Feature #6825: improve table meta runtime (TableMapper and other)
The approach in #6825-4 improved the TableMapper memory and CPU footprint, but the access to these is still done in a... Constantin Asofiei
09:51 AM Database Feature #2137: runtime support for FIELDS/EXCEPT record phrase options
Current changes work, although normalized extent fields are always loaded. Otherwise, #6720 may touch this area again. Constantin Asofiei
07:11 AM Database Feature #2137: runtime support for FIELDS/EXCEPT record phrase options
6129b/14377 has the EXCEPT/FIELDS support ported from trunk - this includes some work done by Sergey in #5731 Constantin Asofiei
09:48 AM Base Language Feature #6820: reduce String.toLowerCase and toUpperCase usage and String instances
I marked the issue at 100%. But there are still some left out places, those that were more complex to address (see #6... Hynek Cihlar
09:27 AM Base Language Feature #6819: refactor FWD proxy implementation to use ReflectASM instead of Java Method reflection
A resume of what was done at this task:
Experiments were done using lambda expression instead of Java reflection o...
Constantin Asofiei
09:25 AM Base Language Support #4032: block/transaction processing context-local and other performance improvements
Changes mentioned in previous notes:
* cache the 'helper' instance at the WrappedResource, object and other cases, t...
Constantin Asofiei
09:23 AM Base Language Feature #6827: reduce the memory footprint of WrappedResource implementations: replace BDTs with ...
Profiling and manual/automated code review was used to identify BDT and collection fields in WrappedResource implemen... Constantin Asofiei
09:22 AM Base Language Feature #6826 (Review): reduce the BDT usage in FWD runtime
Profiling and manual/automated code review was used to identify BDT field and local variable definitions. These were... Constantin Asofiei
09:21 AM Base Language Feature #6824: lazy initialization of collection class members
The fixes part of the fixes from previous notes were determined from profiling and manual/automated code review, used... Constantin Asofiei
09:20 AM Base Language Feature #6650: improve performance of Scopeable notification in TM.processScopeNotifications
After what was done in #6650-34, scope processing is still an expensive area, although the possibilities to improve i... Constantin Asofiei
08:51 AM Base Language Feature #7045: re-implement "normal" (non-abend) stack unwinding to avoid throwing an exception
I understand. My concern is not with your change, it is with my code in @convert/control_flow.rules@. It doesn't co... Greg Shah
08:34 AM Base Language Feature #7045: re-implement "normal" (non-abend) stack unwinding to avoid throwing an exception
The code in control_flow.rules considers the case where the 4GL @return.@ statement is the last one in the top-level ... Constantin Asofiei
08:30 AM Base Language Feature #7045: re-implement "normal" (non-abend) stack unwinding to avoid throwing an exception
Code Review Task Branch 7045a Revision 14481
I don't object to the change, but I'm unsure if it will work quite ri...
Greg Shah
03:25 AM Base Language Feature #7045: re-implement "normal" (non-abend) stack unwinding to avoid throwing an exception
The changes from 7045a are ported and committed to 6129b/14375. Constantin Asofiei
02:37 AM Base Language Feature #7045: re-implement "normal" (non-abend) stack unwinding to avoid throwing an exception
7045a/14481 added another condition to emit a real Java return: the 4GL return statement must not have any downstream... Constantin Asofiei
07:05 AM Base Language Feature #6649: improve the performance or SourceNameMapper runtime
6129b revision 14376 reimplements the case insensitive maps in @SourceNameMapper@ with @CaseInsensitiveHashMap@. Hynek Cihlar
04:55 AM Database Feature #6720: lazy hydration
Thanks for the second set of eyes, Alexandru! I was staring at this too long and completely missed that the second ca... Eric Faulhaber
04:08 AM Database Feature #6720: lazy hydration
Eric Faulhaber wrote:
> In the first conditional block, we check the session cache for a DMO with the primary key re...
Alexandru Lungu
03:33 AM Database Feature #6720: lazy hydration
Ovidiu, Constantin, Alexandru, can you please help me understand this snippet of code in @SQLQuery.hydrateRecordImpl@... Eric Faulhaber
03:41 AM Database Feature #6813: analyze and improve performance of dynamic conversion of temp-tables and queries
Constantin Asofiei wrote:
> Ovidiu, did you meant to rebase 6813a on top of 7020a? See commits 14375 and 14376
I c...
Constantin Asofiei
03:32 AM Database Feature #6813: analyze and improve performance of dynamic conversion of temp-tables and queries
Ovidiu, did you meant to rebase 6813a on top of 7020a? See commits 14375 and 14376 Constantin Asofiei
08:38 PM Database Feature #6813: analyze and improve performance of dynamic conversion of temp-tables and queries
I have done the final clean-up and local tests and then rebased from @6129b@ and pushed to @../p2j/active/6813a/@. Th... Ovidiu Maxiniuc

01/19/2023

03:35 PM Database Feature #6813: analyze and improve performance of dynamic conversion of temp-tables and queries
Constantin Asofiei wrote:
> Ovidiu Maxiniuc wrote:
> > A NPE, OTOH, will immediately pinpoint to the source of the ...
Constantin Asofiei
02:43 PM Database Feature #6813: analyze and improve performance of dynamic conversion of temp-tables and queries
Ovidiu Maxiniuc wrote:
> A NPE, OTOH, will immediately pinpoint to the source of the error.
Ovidiu, we need this in...
Constantin Asofiei
02:40 PM Database Feature #6813: analyze and improve performance of dynamic conversion of temp-tables and queries
Sorry, I was not aware of this @Automatic Null Checking@ feature. My bad. I experimented the exact situation referred... Ovidiu Maxiniuc
02:06 PM Database Feature #6813: analyze and improve performance of dynamic conversion of temp-tables and queries
Ovidiu Maxiniuc wrote:
> Since @node@ is @null@, the original code will evaluate to @false@ without throwing NPE.
...
Eric Faulhaber
01:49 PM Database Feature #6813: analyze and improve performance of dynamic conversion of temp-tables and queries
> Since node is null, the original code will evaluate to false without throwing NPE. The upPath now will execute the ... Greg Shah
12:54 PM Database Feature #6813: analyze and improve performance of dynamic conversion of temp-tables and queries
I understand. What is the appropriate action to do when @node@ is @null@ when replacing:... Ovidiu Maxiniuc
08:50 AM Database Feature #6813: analyze and improve performance of dynamic conversion of temp-tables and queries
> I will investigate in-depth later tomorrow/today, but it looks to me like out JIT is not working correctly. Instead... Greg Shah
12:33 AM Database Feature #6813: analyze and improve performance of dynamic conversion of temp-tables and queries
Committed r14365 of 6813a. All occurrences have been processed and upgraded, including those from Java code and @prog... Ovidiu Maxiniuc
02:33 PM Base Language Feature #6820: reduce String.toLowerCase and toUpperCase usage and String instances
Constantin Asofiei wrote:
> Hynek Cihlar wrote:
> > ... 6129b revision 14369. And related fixes. Please review.
> ...
Hynek Cihlar
02:20 PM Base Language Feature #6820: reduce String.toLowerCase and toUpperCase usage and String instances
Hynek Cihlar wrote:
> ... 6129b revision 14369. And related fixes. Please review.
I see only one issue:
* TempTabl...
Constantin Asofiei
11:21 AM Base Language Feature #6820 (Review): reduce String.toLowerCase and toUpperCase usage and String instances
I removed all the upper/lower case occurrences in the list in #6820-4 with the exception of the following list. These... Hynek Cihlar
06:48 AM Base Language Feature #6820: reduce String.toLowerCase and toUpperCase usage and String instances
Eric Faulhaber wrote:
> Hynek Cihlar wrote:
>
> > I'm not sure we want to give up @AbstractHashedMap@. My prelimin...
Hynek Cihlar
06:33 AM Base Language Feature #6820: reduce String.toLowerCase and toUpperCase usage and String instances
XmlImport.tablesByXmlName changed to @CaseInsensitiveHashMap@ and some other cases in 6129b revision 14369. And relat... Hynek Cihlar
02:28 PM Base Language Feature #7045: re-implement "normal" (non-abend) stack unwinding to avoid throwing an exception
Code Review Task Branch 7045a Revision 14480
Weird. I don't understand the reason this works, but the code seems ...
Greg Shah
02:11 PM Base Language Feature #7045: re-implement "normal" (non-abend) stack unwinding to avoid throwing an exception
The problem described in #7045-15 is fixed in 7045a rev 14480. Constantin Asofiei
08:11 AM Base Language Feature #7045: re-implement "normal" (non-abend) stack unwinding to avoid throwing an exception
There was a regression, in some cases like:... Constantin Asofiei
11:21 AM Base Language Feature #6649 (WIP): improve the performance or SourceNameMapper runtime
Hynek Cihlar
10:48 AM Database Feature #7037: remove dirty share manager
We have multiple applications which are dependent upon the record nursery (item 3 in #7037-6) but which do not (as fa... Greg Shah
08:02 AM Database Bug #6829: H2 forces re-parse of all prepared statements when metadata is changed
> However, we CAN do an inspection before the FQL->SQL conversion and, if there are none of these special columns, th... Greg Shah
05:05 AM Database Bug #6829: H2 forces re-parse of all prepared statements when metadata is changed
> You are right. However, we CAN do an inspection before the FQL->SQL conversion and, if there are none of these spec... Alexandru Lungu
07:51 PM Database Feature #7020: always use "expanded" extent fields
Ovidiu Maxiniuc wrote:
> I would like to keep it this way for a little, until the conversion is "expanded"-aware. ...
Eric Faulhaber
07:36 PM Database Feature #7020: always use "expanded" extent fields
Eric Faulhaber wrote:
> Code review 7020a/14361-14362:
> Nice work! Thank you for turning it around in such a short...
Ovidiu Maxiniuc
07:39 PM Database Feature #6371: implement SAVE CACHE statement
Boris, I agree that the messiness of the data type processing is not nice. If you have a way to simplify this while s... Eric Faulhaber

01/18/2023

05:29 PM Database Bug #6829: H2 forces re-parse of all prepared statements when metadata is changed
Note that we also use H2's query cache (the default size is 8; we set it to 1024 in @H2Helper.setCommonInMemoryProper... Eric Faulhaber
05:13 PM Database Bug #6829: H2 forces re-parse of all prepared statements when metadata is changed
I applaud efforts to make the SQL more compact and thereby reduce the memory consumption, and I agree we should pursu... Eric Faulhaber
04:29 PM Database Bug #6829: H2 forces re-parse of all prepared statements when metadata is changed
Alexandru Lungu wrote:
> I agree that on a general case, this is not feasible. However, I have many examples of very...
Ovidiu Maxiniuc
07:36 AM Database Bug #6829: H2 forces re-parse of all prepared statements when metadata is changed
I've analyzed a heap dump without any alias generated for the columns. I got an ~8k chars long SQL string stored in a... Alexandru Lungu
06:19 AM Database Bug #6829: H2 forces re-parse of all prepared statements when metadata is changed
Ovidiu Maxiniuc wrote:
> We cannot rely on H2 or any other SQL server to provide the right order of columns for our ...
Alexandru Lungu
04:22 PM Database Feature #7020: always use "expanded" extent fields
Code review 7020a/14361-14362:
Nice work! Thank you for turning it around in such a short time.
TBH, it is hard...
Eric Faulhaber
11:48 AM Database Feature #7020: always use "expanded" extent fields
Don't we already deal with this case in the current implementation of expanded extent fields? I may be misremembering... Eric Faulhaber
03:49 PM Base Language Feature #6820: reduce String.toLowerCase and toUpperCase usage and String instances
In the large customer application I see an improvement between 100-200ms between 6129b revisions 14366 and 14368.
Hynek Cihlar
03:23 PM Base Language Feature #6820: reduce String.toLowerCase and toUpperCase usage and String instances
@XmlImport.tablesByXmlName@ can be switched to a @CaseInsensitiveHashMap@. The other cas remaining - from @TempTable... Constantin Asofiei
02:45 PM Base Language Feature #6820: reduce String.toLowerCase and toUpperCase usage and String instances
Constantin Asofiei wrote:
> Hynek Cihlar wrote:
> > Constantin Asofiei wrote:
> > > Unfortunately this introduces ...
Hynek Cihlar
02:36 PM Base Language Feature #6820: reduce String.toLowerCase and toUpperCase usage and String instances
Constantin Asofiei wrote:
> Both commons-collections-3.2.2.jar and commons-collections4-4.4.jar are copied in @build...
Hynek Cihlar
02:21 PM Base Language Feature #6820: reduce String.toLowerCase and toUpperCase usage and String instances
Hynek Cihlar wrote:
> Constantin Asofiei wrote:
> > Unfortunately this introduces a visible slowdown in a large cus...
Constantin Asofiei
02:06 PM Base Language Feature #6820: reduce String.toLowerCase and toUpperCase usage and String instances
Constantin Asofiei wrote:
> Unfortunately this introduces a visible slowdown in a large customer application perform...
Hynek Cihlar
12:25 PM Base Language Feature #6820: reduce String.toLowerCase and toUpperCase usage and String instances
Unfortunately this introduces a visible slowdown in a large customer application performance testing - ~200ms or so. Constantin Asofiei
11:12 AM Base Language Feature #6820: reduce String.toLowerCase and toUpperCase usage and String instances
Hynek Cihlar wrote:
> Actually we explicitly declare dependency on @commons-collection-3.2.2@. I deliberately added ...
Constantin Asofiei
11:09 AM Base Language Feature #6820: reduce String.toLowerCase and toUpperCase usage and String instances
Hynek Cihlar wrote:
> I'm not sure we want to give up @AbstractHashedMap@. My preliminary testing shows it outperf...
Eric Faulhaber
10:41 AM Base Language Feature #6820: reduce String.toLowerCase and toUpperCase usage and String instances
Constantin Asofiei wrote:
> Hynek, you add a dependency on @commons-collections4@ ver @4.4@, but FWD already is (in)...
Hynek Cihlar
10:16 AM Base Language Feature #6820: reduce String.toLowerCase and toUpperCase usage and String instances
Hynek, you add a dependency on @commons-collections4@ ver @4.4@, but FWD already is (in)directly dependent on commons... Constantin Asofiei
08:56 AM Base Language Feature #6820: reduce String.toLowerCase and toUpperCase usage and String instances
6129b revision 14367 resolves most of the cases reported in #6820-4.
Some cases were kept because the use of lower...
Hynek Cihlar
03:27 PM Base Language Feature #7045: re-implement "normal" (non-abend) stack unwinding to avoid throwing an exception
OK, go ahead when it makes sense. Greg Shah
03:24 PM Base Language Feature #7045: re-implement "normal" (non-abend) stack unwinding to avoid throwing an exception
Greg Shah wrote:
> Constantin: Do you want me to merge this into 6129b? It does require a reconversion, but I'd lik...
Constantin Asofiei
02:43 PM Base Language Feature #7045: re-implement "normal" (non-abend) stack unwinding to avoid throwing an exception
Constantin: Do you want me to merge this into 6129b? It does require a reconversion, but I'd like to get the perform... Greg Shah
08:39 AM Base Language Feature #7045: re-implement "normal" (non-abend) stack unwinding to avoid throwing an exception
I haven't ported this to 6129b but it should apply pretty easily. Please try it on the customer app to see the diffe... Greg Shah
08:35 AM Base Language Feature #7045: re-implement "normal" (non-abend) stack unwinding to avoid throwing an exception
Greg Shah wrote:
> I use @wa.tm.getBlockType()@ to check the current block instead of looking at @nearest@ which wou...
Constantin Asofiei
08:33 AM Base Language Feature #7045: re-implement "normal" (non-abend) stack unwinding to avoid throwing an exception
I use @wa.tm.getBlockType()@ to check the current block instead of looking at @nearest@ which would be @BlockType.FUN... Greg Shah
08:32 AM Base Language Feature #7045: re-implement "normal" (non-abend) stack unwinding to avoid throwing an exception
It does exit. I've tested it here. In this case the current block type is NOT @BlockType.FUNCTION@ so it will throw... Greg Shah
08:13 AM Base Language Feature #7045: re-implement "normal" (non-abend) stack unwinding to avoid throwing an exception
My point is about this code:... Constantin Asofiei
07:39 AM Base Language Feature #7045: re-implement "normal" (non-abend) stack unwinding to avoid throwing an exception
> Isn't @BlockManager.returnNormal@ supposed to throw the @ReturnUnwindException@? I mean, this code should distingui... Greg Shah
02:33 AM Base Language Feature #7045: re-implement "normal" (non-abend) stack unwinding to avoid throwing an exception
Greg Shah wrote:
> Constantin: Please review 7045a revision 14479.
Isn't @BlockManager.returnNormal@ supposed to th...
Constantin Asofiei
02:45 PM Database Feature #6813: analyze and improve performance of dynamic conversion of temp-tables and queries
Constantin Asofiei wrote:
> Ovidiu Maxiniuc wrote:
> > It seems that they never end :(. My IDE stops counting at 10...
Eric Faulhaber
01:18 PM Database Feature #6813: analyze and improve performance of dynamic conversion of temp-tables and queries
Code Review Task Branch 6129b Revision 14360
The @DynamicConversionHelper@ and @DynamicQueryHelper@ need history e...
Greg Shah
02:46 AM Database Feature #6813: analyze and improve performance of dynamic conversion of temp-tables and queries
Ovidiu Maxiniuc wrote:
> It seems that they never end :(. My IDE stops counting at 100+ occurrences. The vast majori...
Constantin Asofiei
11:18 PM Database Feature #6813: analyze and improve performance of dynamic conversion of temp-tables and queries
A new set of changes were committed to 6813a (r14364).
It seems that they never end :(. My IDE stops counting at 1...
Ovidiu Maxiniuc
11:23 AM Database Feature #6444: dataset improvements
OK, then if Constantin has no objection, let's go with the manual retrofit approach. Eric Faulhaber
11:20 AM Database Feature #6444: dataset improvements
Eric Faulhaber wrote:
> Igor, which approach do you think requires the least amount of effort, both for you now, and...
Igor Skornyakov
11:13 AM Database Feature #6444: dataset improvements
Igor, which approach do you think requires the least amount of effort, both for you now, and for merging 6129b to tru... Eric Faulhaber
10:21 AM Database Feature #6444: dataset improvements
Igor Skornyakov wrote:
> Greg Shah wrote:
> > We would like to do so, but it will not happen for at least 3 weeks.
...
Igor Skornyakov
10:08 AM Database Feature #6444: dataset improvements
Greg Shah wrote:
> We would like to do so, but it will not happen for at least 3 weeks.
I see. In this case, mayb...
Igor Skornyakov
10:06 AM Database Feature #6444: dataset improvements
We would like to do so, but it will not happen for at least 3 weeks. Greg Shah
05:25 AM Database Feature #6444: dataset improvements
As mentioned in #6444-83 DATA-SET serialization features should better be tested/fixed on top of changes made for #64... Igor Skornyakov
04:41 AM Database Feature #6444: dataset improvements
Rebased the task branch 6444a to the trunk/14480.
Pushed up to revision 14484.
Igor Skornyakov
06:11 AM Database Bug #7035: Extract query parameters from statically converted FQL
Eric Faulhaber wrote:
> Dănuț Filimon wrote:
> Note that there are other cases where we have to do some inlining ou...
Alexandru Lungu
11:11 PM Database Bug #7035: Extract query parameters from statically converted FQL
Dănuț Filimon wrote:
> What is the purpose of @inlineSubstitutionParameter@? The modifications I made for extracti...
Eric Faulhaber
04:06 AM Database Bug #7047: Problem with AdaptiveQuery and ScrollableResults
Added attachements Igor Skornyakov
04:04 AM Database Bug #7047: Problem with AdaptiveQuery and ScrollableResults
It looks like we have problems either with @AdaptiveQuery@ or @ScrollingResults@ (or both).
Consider the attached pr...
Igor Skornyakov
04:03 AM Database Bug #7047 (New): Problem with AdaptiveQuery and ScrollableResults
Igor Skornyakov
07:42 PM Database Feature #6371: implement SAVE CACHE statement
OK, I pushed proper translation of datatypes for Postgres - rev 14454.
I have to say that I don't really like the ...
Boris Schegolev

01/17/2023

06:28 PM Base Language Feature #7045 (Review): re-implement "normal" (non-abend) stack unwinding to avoid throwing an ex...
Constantin: Please review 7045a revision 14479. Greg Shah
06:26 PM Base Language Feature #7045: re-implement "normal" (non-abend) stack unwinding to avoid throwing an exception
In addition to user-defined functions, 2 additional callable program types which are efectively the equivalent of use... Greg Shah
09:24 AM Base Language Feature #7045: re-implement "normal" (non-abend) stack unwinding to avoid throwing an exception
I'm working on a simple approach for now. Rather than reimplementing all of the flow control for the cases where the... Greg Shah
05:53 PM Database Bug #6829: H2 forces re-parse of all prepared statements when metadata is changed
We cannot rely on H2 or any other SQL server to provide the right order of columns for our properties. There are a lo... Ovidiu Maxiniuc
05:58 AM Database Bug #6829: H2 forces re-parse of all prepared statements when metadata is changed
Alexandru Lungu wrote:
> * As a risky statement, the "*" wildcard can be used in many situations to reduce SQL size....
Alexandru Lungu
04:52 AM Database Bug #6829: H2 forces re-parse of all prepared statements when metadata is changed
> Alexandru, I have in a heap dump UnclosablePreparedStatement instances with ~90KB retained heap. But in at least a ... Alexandru Lungu
03:38 PM Database Support #4701: try to improve H2 transaction commit performance
We can wait. I just noticed this and it is not a critical change, just a preference. I think it is more intuitive to ... Eric Faulhaber
03:40 AM Database Support #4701: try to improve H2 transaction commit performance
Eric Faulhaber wrote:
> Greg Shah wrote:
> > Alexandru:
> >
> > Is #4701-72 still the correct way to enable priv...
Alexandru Lungu
03:24 PM Database Feature #6444: dataset improvements
Igor Skornyakov wrote:
> So I suggest creating a separate task for #6444-99 and switching to the remaining items i...
Eric Faulhaber
02:13 PM Database Feature #6444: dataset improvements
Igor Skornyakov wrote:
> If I add an explicit ordering to the query in the #6444-99 test, the test passes. So the pr...
Igor Skornyakov
01:18 PM Database Feature #6444: dataset improvements
Igor Skornyakov wrote:
> Regarding #6444-99:
>
> The situation is a little confusing.
> The @AdaptiveQuery.execu...
Igor Skornyakov
11:24 AM Database Feature #6444: dataset improvements
Regarding #6444-99:
The situation is a little confusing.
The @AdaptiveQuery.executeQuery()@ instead of creating @...
Igor Skornyakov
09:30 AM Database Feature #6444: dataset improvements
I believe that FILL support for recursive DATA-RELATIONs is done.
Committed to 6444a/14476.
Working on #6444-99 (...
Igor Skornyakov
05:17 AM Database Feature #6444: dataset improvements
I've got a strange exception.
A very simple test...
Igor Skornyakov
04:57 AM Database Feature #6444: dataset improvements
I've noticed a problem with DDL generation.
If the list of dialects in @p2j.cfg.xml@ contains @mariadb@ then in the...
Igor Skornyakov
10:18 AM Database Feature #6813: analyze and improve performance of dynamic conversion of temp-tables and queries
Constantin,
I started with @relativePath()@ since I counted the most occurrences in @rules/@ folder. It make sense ...
Ovidiu Maxiniuc
11:16 PM Database Feature #6813: analyze and improve performance of dynamic conversion of temp-tables and queries
Ovidiu Maxiniuc wrote:
> The Java support should be done (I left some scaffolding in there) but the TRPL is not full...
Constantin Asofiei
10:05 AM Database Bug #7035: Extract query parameters from statically converted FQL
I've experimented with the testcase provided and found out a lot about how FQLPreprocessor works. I wrote an implemen... Dănuț Filimon
09:13 AM Base Language Feature #3853: implement LOG-MANAGER runtime
+This diagram shows the current state of the call stack producing error logs (not a complete view):+
!clientlog-ol...
Galya B
06:36 AM Base Language Feature #6821: java collection performance
As far as I can see, only @pruneSessionCache()@ issue is left here. Stanislav Lomany
06:35 AM Base Language Feature #6821: java collection performance
> You will see that the Scopeable scopestart/finished do lots of work - please check if it may be possible to condens... Stanislav Lomany
02:35 AM Base Language Feature #6817: replace INSTANTIATING-PROCEDURE and other handle<ExternalProgram> with the actual ...
Constantin Asofiei wrote:
> 6129b/14365 fixes a problem related to WidgetPool .
The change is good, thanks!
Hynek Cihlar
01:28 AM Database Feature #6371: implement SAVE CACHE statement
To determine the permissible data types, please refer to the static initializers for the @fwd2sql@ maps in the respec... Eric Faulhaber

01/16/2023

06:45 PM Database Feature #6813: analyze and improve performance of dynamic conversion of temp-tables and queries
I have created branch 6813a and committed revision 14363.
It is not final.
The Java support should be done (I left...
Ovidiu Maxiniuc
02:14 PM Database Feature #6813: analyze and improve performance of dynamic conversion of temp-tables and queries
Eric Faulhaber wrote:
> Ovidiu, did you get the varargs working? If it doesn't work directly with @Aast@, try it wit...
Ovidiu Maxiniuc
02:07 PM Database Feature #6813: analyze and improve performance of dynamic conversion of temp-tables and queries
Ovidiu, did you get the varargs working? If it doesn't work directly with @Aast@, try it with @CommonAstSupport@, as ... Eric Faulhaber
06:40 PM Database Feature #7020: always use "expanded" extent fields
I committed r14362.
I have a problem which I did not solved: the dynamic extent indices.
For example, for the ab...
Ovidiu Maxiniuc
05:23 PM Runtime Infrastructure Bug #6671: Build configurations need "fine tuning"
I found that @src/4gl/embedded/**@ was missing from the *archive* task for the @"${dist.home}/fwd_deploy-convert_${ma... Roger Borrello
03:54 PM Base Language Feature #6824: lazy initialization of collection class members
Some other changes related to this are in 6129b/14366. Constantin Asofiei
03:54 PM Base Language Support #4032: block/transaction processing context-local and other performance improvements
Another batch of changes related to this is in 6129b/14366 Constantin Asofiei
03:53 PM Base Language Feature #6827: reduce the memory footprint of WrappedResource implementations: replace BDTs with ...
6129b/14366 contains a set of changes related to this, I don't think there's anything else remaining related to the w... Constantin Asofiei
03:53 PM Base Language Feature #6826: reduce the BDT usage in FWD runtime
6129b/14366 contains a set of changes related to this, mainly from what profiling a large customer app showed. Constantin Asofiei
03:51 PM Base Language Feature #6817 (Test): replace INSTANTIATING-PROCEDURE and other handle<ExternalProgram> with the ...
6129b/14365 fixes a problem related to WidgetPool . Constantin Asofiei
03:51 AM Base Language Feature #6817 (Review): replace INSTANTIATING-PROCEDURE and other handle<ExternalProgram> with th...
I checked in the changes in 6129b revision 14364. In addition to the attached 6817a.diff I also modified the followin... Hynek Cihlar
02:10 AM Base Language Feature #6817: replace INSTANTIATING-PROCEDURE and other handle<ExternalProgram> with the actual ...
Hynek, I don't see any issue with the patch. Also, the comments don't introduce anything new. Please add header ent... Constantin Asofiei
03:28 PM Database Support #4701: try to improve H2 transaction commit performance
Greg Shah wrote:
> Alexandru:
>
> Is #4701-72 still the correct way to enable private temp-table databases?
>
...
Eric Faulhaber
02:38 PM Database Support #4701: try to improve H2 transaction commit performance
Alexandru:
Is #4701-72 still the correct way to enable private temp-table databases?
How to we enable LOCK_MODE=0?
Greg Shah
12:42 PM Database Feature #7037: remove dirty share manager
7037a has been merged into the trunk as bzr revision 14478. Stanislav Lomany
09:41 AM Database Feature #7037: remove dirty share manager
Created task branch 7037a from FWD trunk revision 14477. Stanislav Lomany
08:00 AM Database Feature #7037: remove dirty share manager
Constantin Asofiei wrote:
> Eric, doesn't this disable the @FIND for non-temp-table records in the record nursery@ c...
Greg Shah
01:59 AM Database Feature #7037: remove dirty share manager
Eric, doesn't this disable the @FIND for non-temp-table records in the record nursery@ case Greg mentioned? I ask bec... Constantin Asofiei
01:07 AM Database Feature #7037: remove dirty share manager
> This seems safe to commit this in both trunk and in 6129b.
Committed as 6129b rev 14362...
Stanislav Lomany
12:06 PM Database Feature #6444: dataset improvements
Ovidiu Maxiniuc wrote:
> I was writing a pretty equivalent response. That is correct. The values for paging are not ...
Igor Skornyakov
12:04 PM Database Feature #6444: dataset improvements
I was writing a pretty equivalent response. That is correct. The values for paging are not really used per-se, only t... Ovidiu Maxiniuc
12:00 PM Database Feature #6444: dataset improvements
Igor Skornyakov wrote:
> What is the reason to use @maxResults@ and @startOffset@ in the @QueryKey@ for the @Persist...
Eric Faulhaber
04:48 AM Database Feature #6444: dataset improvements
What is the reason to use @maxResults@ and @startOffset@ in the @QueryKey@ for the @Persistence.staticQueryCache@?
I...
Igor Skornyakov
11:51 AM Base Language Bug #6399: ENCRYPT/DECRYPT built-in function results different than 4GL when IV is shorter than r...
The runtime implementation of this is in @SecurityOps.encrypt()/decrypt()@. There should be no conversion changes ne... Greg Shah
11:49 AM Base Language Feature #6421: finish GENERATE-RANDOM-KEY support
The runtime implementation of this is in @SecurityOps.generateRandomKey()@. There should be no conversion changes ne... Greg Shah
11:41 AM Base Language Feature #6421 (WIP): finish GENERATE-RANDOM-KEY support
Theodoros Theodorou
10:41 AM Base Language Feature #6821: java collection performance
Stanislav Lomany wrote:
> Performance overhead in function vs procedure is cause by throwing @ReturnUnwindException@...
Greg Shah
08:24 AM Base Language Feature #6821: java collection performance
Performance overhead in function vs procedure is cause by throwing @ReturnUnwindException@. I think that in vast majo... Stanislav Lomany
10:29 AM Base Language Feature #7045 (Test): re-implement "normal" (non-abend) stack unwinding to avoid throwing an exce...
Greg Shah
08:03 AM Database Bug #6829: H2 forces re-parse of all prepared statements when metadata is changed
Constantin Asofiei wrote:
> Alexandru, I think a first pass would be to change the FQL generation to use @c1@, @c2@,...
Alexandru Lungu
07:08 AM Database Support #6714: check if there is an optimization opportunity when copying temp-tables based on mu...
Constantin Asofiei wrote:
> Some concerns on moving the source records to the destination table just by updating the...
Alexandru Lungu
03:52 AM Base Language Feature #6820 (WIP): reduce String.toLowerCase and toUpperCase usage and String instances
Hynek Cihlar

01/15/2023

05:13 PM Database Feature #7037: remove dirty share manager
Greg Shah wrote:
> Eric: Do you have any objections?
>
> This seems safe to commit this in both trunk and in 612...
Eric Faulhaber
04:36 PM Database Feature #7037: remove dirty share manager
Eric: Do you have any objections?
This seems safe to commit this in both trunk and in 6129b.
Greg Shah
03:19 PM Database Feature #7037: remove dirty share manager
Please review the diff which allows to disable dirty sharing. I've tested trunk with this change on the big customers... Stanislav Lomany
06:38 AM Database Feature #7037: remove dirty share manager
I've tested it in Hotel (I had to disable @ConnectionManager.authenticate@ to run it) and found no persistence-relate... Stanislav Lomany
10:48 AM Database Feature #6444: dataset improvements
Fixed second-pass query generation for queries with CONTAINS operator.
Committed to 6444a/14475.
Igor Skornyakov
12:13 AM Database Feature #7020: always use "expanded" extent fields
I have created the 7020a branch (from 6129b) and committed r14361 which includes the changes for a first version of "... Ovidiu Maxiniuc

01/14/2023

05:00 PM Database Feature #7037: remove dirty share manager
The last time we measured it, I recall that about 10% of time was spent inside the dirty database. Removing it might... Greg Shah
04:59 PM Database Feature #7037: remove dirty share manager
Let's make sure that Hotel works properly with your changes. Greg Shah
07:17 AM Database Feature #7037: remove dirty share manager
Eric expected that the persistence layer will break badly if there is not a safe mocking version of the @NopDirtyShar... Greg Shah
04:57 PM Base Language Feature #6821: java collection performance
Stanislav Lomany wrote:
> [...]
>
> It looks interesting to me that functions are executed 10 times slower than p...
Greg Shah
04:28 PM Base Language Feature #6821: java collection performance
... Stanislav Lomany
01:36 AM Database Feature #6813: analyze and improve performance of dynamic conversion of temp-tables and queries
varargs in TRPL are emulated via @Object[]@ I think - see @CommonAstSupport.getAncestorOfType@ for an example. Constantin Asofiei
09:56 PM Database Feature #6813: analyze and improve performance of dynamic conversion of temp-tables and queries
Ovidiu Maxiniuc wrote:
> Eric Faulhaber wrote:
> > That should make the replacement TRPL code simpler and more comp...
Ovidiu Maxiniuc
08:37 PM Database Feature #6813: analyze and improve performance of dynamic conversion of temp-tables and queries
Greg Shah wrote:
> I understand. Even though it is possibly not much improvement, it still must be something small ...
Ovidiu Maxiniuc

01/13/2023

06:26 PM Database Feature #6371: implement SAVE CACHE statement
I pushed minor updates to the table validation procedure - new rule plus the table name shows up in the error window.... Boris Schegolev
11:56 AM Database Feature #6371: implement SAVE CACHE statement
Eric Faulhaber wrote:
> Eric Faulhaber wrote:
> On second thought, this might not be what you were seeing. This was...
Boris Schegolev
03:53 AM Database Feature #6371: implement SAVE CACHE statement
Eric Faulhaber wrote:
> Boris, with rev 14450, I get this in an infinite loop when I run @save-cache3.p@:
>
> [.....
Eric Faulhaber
02:48 AM Database Feature #6371: implement SAVE CACHE statement
Boris, with rev 14450, I get this in an infinite loop when I run @save-cache3.p@:... Eric Faulhaber
05:23 PM Base Language Feature #6817: replace INSTANTIATING-PROCEDURE and other handle<ExternalProgram> with the actual ...
The attached diff contains @handle@ replacements for the @com.goldencode.p2j.persist@ Java package. I left several co... Hynek Cihlar
04:51 PM Database Feature #7037: remove dirty share manager
I'm done for today, but for the case you're in a hurry, I've attached option 1: @NopDirtyShareContext@ as well as opt... Stanislav Lomany
03:44 PM Database Feature #7037: remove dirty share manager
> Please create a @NopDirtyShareContext@ by extending @DirtyShareContext@ and write each method as an empty implement... Stanislav Lomany
02:15 PM Database Feature #7037 (WIP): remove dirty share manager
Stanislav Lomany
11:43 AM Database Feature #7037: remove dirty share manager
Greg Shah wrote:
> Please create a @NopDirtyShareContext@ by extending @DirtyShareContext@ and write each method as ...
Eric Faulhaber
10:18 AM Database Feature #7037: remove dirty share manager
FYI, the following are the existing (known) use cases for the dirty share database.
# FIND query cross-session mod...
Greg Shah
10:07 AM Database Feature #7037: remove dirty share manager
Optimally this should be configurable in the directory so that we can turn it on or off without code changes. Greg Shah
10:06 AM Database Feature #7037: remove dirty share manager
Please create a @NopDirtyShareContext@ by extending @DirtyShareContext@ and write each method as an empty implementat... Greg Shah
03:27 AM Database Feature #7037: remove dirty share manager
Greg Shah wrote:
> How easy is it to separate the portions only used for the cross-session behavior (which is about ...
Eric Faulhaber
02:49 AM Database Feature #7037: remove dirty share manager
How easy is it to separate the portions only used for the cross-session behavior (which is about the 4GL transaction ... Greg Shah
02:21 PM Base Language Feature #6821: java collection performance
Committed 6129b rev 14358: Final round of performance improvements which are replacements of some 'for-each' loops wi... Stanislav Lomany
10:36 AM Database Feature #6813: analyze and improve performance of dynamic conversion of temp-tables and queries
Greg Shah wrote:
> > They must be grouped in a block / single_block / stmt_list to benefit from natural processing d...
Ovidiu Maxiniuc
03:11 AM Database Feature #6813: analyze and improve performance of dynamic conversion of temp-tables and queries
Greg Shah wrote:
> > I think there are other source of improvements in TRPL. One I can guess now are usages of @down...
Eric Faulhaber
03:02 AM Database Feature #6813: analyze and improve performance of dynamic conversion of temp-tables and queries
> I think there are other source of improvements in TRPL. One I can guess now are usages of @downPath@ and @upPath@ w... Greg Shah
03:01 AM Database Feature #6813: analyze and improve performance of dynamic conversion of temp-tables and queries
> They must be grouped in a block / single_block / stmt_list to benefit from natural processing downstream. I debugge... Greg Shah
12:06 AM Database Feature #6813: analyze and improve performance of dynamic conversion of temp-tables and queries
I tried to create a new @dynamic_query@ entry point for parser. There are 3-4 statements which need to be supported:
...
Ovidiu Maxiniuc
08:42 AM Base Language Feature #3853: implement LOG-MANAGER runtime
When @-clientlog@ or @LOG-MANAGER:LOGFILE-NAME@ is defined logging level 1 is always enabled (except if explicitly se... Galya B
02:52 AM Base Language Feature #3853: implement LOG-MANAGER runtime
Marian Edu wrote:
> Bref, using @-errostack@ has no effect on the client log so don't bother with it in this case.
...
Galya B
02:43 AM Base Language Feature #3853: implement LOG-MANAGER runtime
Greg Shah wrote:
> Marian: Can you offer any guidance?
* @-errorstack@ (@session:error-stack-trace@) has no effec...
Marian Edu
06:25 AM Database Feature #6816: improve PreselectQuery.assembleHQL
I've attached a patch in which I've done some refactoring to the @SortCriterion@ constructor. Mainly, instead of call... Radu Apetrii

01/12/2023

02:30 PM Database Feature #7037: remove dirty share manager
The dirty share manager originally was added to solve a problem with a particular use case in one customer's applicat... Eric Faulhaber
01:53 PM Database Feature #7037 (Test): remove dirty share manager
Eric Faulhaber
10:54 AM Database Feature #6444: dataset improvements
Added fix for H2 bug with bind parameters in recursive CTEs.
Now the test works fine both temp tables and permanent ...
Igor Skornyakov
01:51 AM Database Feature #6444: dataset improvements
> It returns nothing. Moreover, as I mentioned the problem is gone if the query has no parameters.
> It is known tha...
Igor Skornyakov
01:43 AM Database Feature #6444: dataset improvements
Ovidiu Maxiniuc wrote:
> Executing @.next()@ will cause the result to advance. You lose the object of interest. You ...
Igor Skornyakov
10:05 AM Base Language Feature #3853: implement LOG-MANAGER runtime
Marian: Can you offer any guidance? Greg Shah
06:40 AM Base Language Feature #3853: implement LOG-MANAGER runtime
I'm trying to find the difference in the log files when @SESSION:ERROR-STACK-TRACE@ (@-errorstack@) is enabled, but f... Galya B
09:33 AM Database Support #6714: check if there is an optimization opportunity when copying temp-tables based on mu...
Some concerns on moving the source records to the destination table just by updating the multiplex ID to the destinat... Constantin Asofiei
08:14 AM Database Feature #6813: analyze and improve performance of dynamic conversion of temp-tables and queries
Nice! Let's see what we can get back by implementing a new parser rule (@dynamic_query@) which is designed to do the... Greg Shah
12:17 AM Database Feature #6813: analyze and improve performance of dynamic conversion of temp-tables and queries
I added timers for the setup of @SymbolResolver@, @SchemaDictionary@ and other tasks needed for the @query-prepare@ a... Ovidiu Maxiniuc
03:07 AM Database Bug #7035 (WIP): Extract query parameters from statically converted FQL
The following is a testcase in which FWD hard-codes the arguments into the FQL:... Alexandru Lungu
02:52 AM Database Bug #7035 (Closed): Extract query parameters from statically converted FQL
Alexandru Lungu
09:33 PM Base Language Feature #6824: lazy initialization of collection class members
Review of: 6129b/14348.
I am OK with the code. However, in @DataSet@, when it is decided that @callbacks == null@ ...
Ovidiu Maxiniuc

01/11/2023

03:22 PM Database Feature #6444: dataset improvements
Igor Skornyakov wrote:
> I've tested with permanent H2 tables.
> If I stop with the debugger in the @SQLQuery.scrol...
Ovidiu Maxiniuc
02:16 PM Database Feature #6444: dataset improvements
Igor Skornyakov wrote:
> In addition to #6444-86.
> If I set a breakpoint at the last statement of the @FqlToSqlCon...
Igor Skornyakov
11:29 AM Database Feature #6444: dataset improvements
In addition to #6444-86.
If I set a breakpoint at the last statement of the @FqlToSqlConverter.toSQL()@ (@return sql...
Igor Skornyakov
10:47 AM Database Feature #6444: dataset improvements
Ovidiu Maxiniuc wrote:
> To test these queries during in real application using the data currently in temp-tables, y...
Igor Skornyakov
06:23 AM Database Support #6714: check if there is an optimization opportunity when copying temp-tables based on mu...
There already is a JMX for @OutputTableCopier@ with the same name and it measures the execution time and call count o... Dănuț Filimon
04:35 AM Database Support #6714: check if there is an optimization opportunity when copying temp-tables based on mu...
Danut, can you add a counter JMX for your modification? I think we can benefit from finding out how many times this s... Alexandru Lungu
04:04 AM Database Feature #6371: implement SAVE CACHE statement
Simply skipping surrogate primary key column seems to break index handling, rules are failing during AST validation. ... Boris Schegolev

01/10/2023

06:43 PM Database Feature #6813: analyze and improve performance of dynamic conversion of temp-tables and queries
> Looking at the time results from #6813-18 it looks to me that the main slow-performance problem lies in the convers... Greg Shah
04:46 PM Database Feature #6813: analyze and improve performance of dynamic conversion of temp-tables and queries
Looking at the time results from #6813-18 it looks to me that the main slow-performance problem lies in the conversio... Ovidiu Maxiniuc
02:15 PM Base Language Feature #6827: reduce the memory footprint of WrappedResource implementations: replace BDTs with ...
I'm still on #6821, so feel free to do anything you want here. Stanislav Lomany
02:13 PM Base Language Feature #6827: reduce the memory footprint of WrappedResource implementations: replace BDTs with ...
Stanislav, do you need help here? Constantin Asofiei
12:14 PM Base Language Feature #6821: java collection performance
Committed 6129b rev 14351: @P2JIndex.components()@ provides direct access to the components array in order to improve... Stanislav Lomany
11:13 AM Base Language Feature #6821: java collection performance
Greg Shah wrote:
> Don't we already know the exact list of rowids used for all @UPDATE@ statements? We also know th...
Ovidiu Maxiniuc
10:27 AM Base Language Feature #6821: java collection performance
> Ultimately, we could iterate the tables individually and process (delete/update then invalidate) the records indivi... Greg Shah
08:40 PM Base Language Feature #6821: java collection performance
The reason @pruneSessionCache()@ is called on @afterBuf@ and @beforeBuf@ after a batch operation executed using SQL d... Ovidiu Maxiniuc
10:51 AM Base Language Feature #6826: reduce the BDT usage in FWD runtime
Stanislav Lomany wrote:
> No.
OK, I'm taking it, as is easier to look in the profiler and see what can be reduced.
Constantin Asofiei
10:50 AM Base Language Feature #6826: reduce the BDT usage in FWD runtime
No. Stanislav Lomany
10:50 AM Base Language Feature #6826: reduce the BDT usage in FWD runtime
Stanislav, did you start work on this? Constantin Asofiei
09:20 AM Base Language Feature #3853: implement LOG-MANAGER runtime
*Logging level rules:*
|Startup params/4GL setters|Auto set logging level|
|none|2|
|-logentrytypes (invalid)|0|...
Galya B
09:18 AM Database Support #6714: check if there is an optimization opportunity when copying temp-tables based on mu...
I've made a comparison between *3821c/rev.14467* and the patched version from #6714-5 using different *patched versio... Dănuț Filimon
09:01 AM Database Feature #6444: dataset improvements
I'm not sure how the @EDITOR:EMPTY@ attribute was included here. We will move that work to #7032. Greg Shah
09:00 AM User Interface Feature #7032 (New): implement the EDITOR:EMPTY attribute
Greg Shah
08:24 AM Testing Support #6858: rework existing testcases to use ABLUnit
> > Wonder if we can somehow get out hands on Vladimir's implementation to see how things are working in FWD?
> I th...
Greg Shah
08:07 AM Testing Support #6858: rework existing testcases to use ABLUnit
> * First, not all tests are really unit-tests - some of them really need user interaction, other tests needs an appl... Greg Shah
07:53 AM Testing Support #6858: rework existing testcases to use ABLUnit
When I made an entry in this task on 2022-12-15 at 09:55, I accidentally set it to private.
Here it is. It relate...
Greg Shah
07:48 AM Testing Support #6858: rework existing testcases to use ABLUnit
Vladimir Tsichevski wrote:
> > Wonder if we can somehow get out hands on Vladimir's implementation to see how thin...
Vladimir Tsichevski
07:38 AM Base Language Feature #6650: improve performance of Scopeable notification in TM.processScopeNotifications
6129b/14350 improves:
* OUTPUT parameter processing: track if an output parameter is associated with a table field, ...
Constantin Asofiei
07:34 AM Base Language Support #4032: block/transaction processing context-local and other performance improvements
A batch of changes (including #4032-5) are in 6129b/14349 Constantin Asofiei
07:12 AM Base Language Feature #6824: lazy initialization of collection class members
A batch of changes (including #6824-4) are in 6129b/14348
Please review.
Constantin Asofiei
07:01 AM Database Feature #6825: improve table meta runtime (TableMapper and other)
The changes for #6825-4 are in 6129b/14347 Constantin Asofiei
06:40 AM Database Feature #6830 (Review): find and fix all SQL SELECT statements with inlined literal arguments, an...
Radu Apetrii
05:01 AM Database Feature #6830: find and fix all SQL SELECT statements with inlined literal arguments, and rewrite...
Constantin Asofiei wrote:
> Radu, the changes are OK with 6129b and a customer app (performance is improved). Pleas...
Radu Apetrii
04:15 AM Database Feature #6371: implement SAVE CACHE statement
Also, please review the data type checking in the PostgreSQL dialect again, and apply the methodology I described in ... Eric Faulhaber
04:12 AM Database Feature #6371: implement SAVE CACHE statement
Revision 14449 fixes the table name and legacy table name when creating the schema AST. Only the DMO interface name s... Eric Faulhaber

01/09/2023

06:11 PM Database Feature #6371: implement SAVE CACHE statement
In the end the solution is pretty simple - see revision 14448. Boris Schegolev
12:58 PM Base Language Feature #6821: java collection performance
Greg Shah wrote:
> I was thinking of the DMO in its buffer form, not the concept of the specific record that is co...
Eric Faulhaber
07:33 AM Base Language Feature #6821: java collection performance
> PreselectQuery.components() - 430k
Committed 6129b rev 14345: replaced components iterator with @ArrayList.get()...
Stanislav Lomany
06:58 AM Base Language Feature #6821: java collection performance
Eric Faulhaber wrote:
> Greg Shah wrote:
> > Eric Faulhaber wrote:
> > > Greg Shah wrote:
> > > > > Greg, are you...
Greg Shah
06:33 AM Base Language Feature #6821: java collection performance
Stanislav Lomany wrote:
> > I would start with Java arrays first (look for @[]@ in the text).
>
> Constantin, are...
Constantin Asofiei
12:42 PM Database Feature #6830: find and fix all SQL SELECT statements with inlined literal arguments, and rewrite...
Radu, the changes are OK with 6129b and a customer app (performance is improved). Please commit the 6830-6129b.patch... Constantin Asofiei
06:36 AM Database Feature #6830: find and fix all SQL SELECT statements with inlined literal arguments, and rewrite...
Here you go, the patch ported to 6129b, rev. 14344.
I tested some little examples to see that nothing breaks, but n...
Radu Apetrii
03:23 AM Database Feature #6830: find and fix all SQL SELECT statements with inlined literal arguments, and rewrite...
Radu Apetrii wrote:
> Constantin Asofiei wrote:
> > Radu, what is the state of this task? Was anything committed to...
Constantin Asofiei
02:36 AM Database Feature #6830: find and fix all SQL SELECT statements with inlined literal arguments, and rewrite...
Constantin Asofiei wrote:
> Radu, what is the state of this task? Was anything committed to 3821c?
No, I did not co...
Radu Apetrii
12:08 PM Testing Support #6858: rework existing testcases to use ABLUnit
Marian Edu wrote:
> not sure how the test engine will work in FWD so we're trying to make the test methods that wa...
Vladimir Tsichevski
10:00 AM Testing Support #6858: rework existing testcases to use ABLUnit
Greg, we have a number of things to discuss here.
* First, not all tests are really unit-tests - some of them rea...
Marian Edu
08:57 AM Base Language Feature #6819: refactor FWD proxy implementation to use ReflectASM instead of Java Method reflection
Greg Shah wrote:
> I understand there is no performance difference in lambdas themselves. I'm wondering about the c...
Constantin Asofiei
08:39 AM Database Feature #7020: always use "expanded" extent fields
> * added a new @denormalized@ attribute in @@Property@ annotation
Please name this @expanded@ because the "denorm...
Greg Shah
06:31 AM Database Feature #6444: dataset improvements
Here is my understanding of the current task status
h3. DATA-RELATION:RECURSIVE attribute
* The FILL method s...
Igor Skornyakov

01/08/2023

01:36 PM Base Language Feature #6821: java collection performance
> I would start with Java arrays first (look for @[]@ in the text).
Constantin, are you suggesting to replace enha...
Stanislav Lomany

01/07/2023

05:51 PM Base Language Feature #6821: java collection performance
The "for" cycle changes reviewed by Constantin were merged and committed as 6129b rev 14344. Stanislav Lomany
10:20 PM Database Feature #7020: always use "expanded" extent fields
Greg Shah wrote:
> The Open Client proxy generation is the replacement of the OpenEdge "proxygen" tool which creates...
Ovidiu Maxiniuc
10:19 PM Database Feature #7020 (WIP): always use "expanded" extent fields
Status update.
My work ATM include:
* re-enabled denormalisation for temp-tables. I do not use this except for havi...
Ovidiu Maxiniuc
08:32 PM Database Feature #6813: analyze and improve performance of dynamic conversion of temp-tables and queries
After previous note I changes the testcase a bit: I changed the second from the end line: @message "Run " + string(k)... Ovidiu Maxiniuc
07:10 PM Database Feature #6813 (WIP): analyze and improve performance of dynamic conversion of temp-tables and que...
I used the following 4GL program in order to replicate Constantin's testcase for static/dynamic queries:... Ovidiu Maxiniuc

01/06/2023

05:53 PM Base Language Feature #6821: java collection performance
Greg Shah wrote:
> Eric Faulhaber wrote:
> > Greg Shah wrote:
> > > > Greg, are you suggesting to maintain for tem...
Eric Faulhaber
03:41 PM Base Language Feature #6821: java collection performance
> Please backport this 3821c/14472 to 6129b and commit it there.
Committed as 6129b rev 14343.
Stanislav Lomany
02:19 PM Base Language Feature #6821: java collection performance
Eric Faulhaber wrote:
> Greg Shah wrote:
> > > Greg, are you suggesting to maintain for temp-tables a map of Record...
Greg Shah
02:18 PM Base Language Feature #6821: java collection performance
Do we assign a new @rowid@ when we copy temp-table records from one temp-table to another, like in table parameter pr... Greg Shah
02:07 PM Base Language Feature #6821: java collection performance
I made an assumption that temp-table record IDs are not unique across multiplex IDs, which is wrong, as you're saying... Stanislav Lomany
02:05 PM Base Language Feature #6821: java collection performance
Stanislav Lomany wrote:
> > Do I understand correctly that only the most recently added entry will be kept and any o...
Eric Faulhaber
02:03 PM Base Language Feature #6821: java collection performance
Greg Shah wrote:
> One thing that is not obvious to me is how the cache is used. Since we are using temp-tables wit...
Eric Faulhaber
02:01 PM Base Language Feature #6821: java collection performance
> Do I understand correctly that only the most recently added entry will be kept and any older entry is overwritten? ... Stanislav Lomany
01:56 PM Base Language Feature #6821: java collection performance
Greg Shah wrote:
> > Greg, are you suggesting to maintain for temp-tables a map of RecordBuffer.dmoClass -> Set of r...
Eric Faulhaber
01:29 PM Base Language Feature #6821: java collection performance
One thing that is not obvious to me is how the cache is used. Since we are using temp-tables with this mechanism, it... Greg Shah
01:25 PM Base Language Feature #6821: java collection performance
> Greg, are you suggesting to maintain for temp-tables a map of RecordBuffer.dmoClass -> Set of records?
Not exac...
Greg Shah
12:52 PM Base Language Feature #6821: java collection performance
@invalidateRecords@ method is called only for temp-tables. And called only by @ACCEPT-CHANGES@ method (I'm interested... Stanislav Lomany
12:25 PM Base Language Feature #6821: java collection performance
All usage of @Session.invalidateRecords()@ comes from @RecordBuffer.pruneSessionCache()@ which is only called in 2 pl... Greg Shah
12:05 PM Base Language Feature #6821: java collection performance
Stanislav Lomany wrote:
> > TableMapper$LegacyFieldInfo.getMutableInfo 1.8 million
>
> This one looks like cachin...
Constantin Asofiei
11:39 AM Base Language Feature #6821: java collection performance
> TableMapper$LegacyFieldInfo.getMutableInfo 1.8 million
This one looks like caching may be slightly improved, but...
Stanislav Lomany
02:14 AM Base Language Feature #6821: java collection performance
Stanislav Lomany wrote:
> > You also need checks if this is the single resource in the chain being deleted, in this ...
Constantin Asofiei
04:45 PM Database Feature #6371: implement SAVE CACHE statement
Yes, I met this problem a few times. I will make the change you suggest. It will not be that straightforward because ... Boris Schegolev
12:30 PM Database Feature #6371: implement SAVE CACHE statement
Upon a validation failure, the failing table needs to be removed from the last known @DatabaseState@. Otherwise, if a... Eric Faulhaber
06:56 AM Database Feature #6371: implement SAVE CACHE statement
Eric Faulhaber wrote:
> So, please implement a unique interface naming scheme, similar to what we have in @DynamicTa...
Boris Schegolev
04:46 AM Database Feature #6371: implement SAVE CACHE statement
I committed 6371/14445, which fixes the raising of an error condition for a schema validation failure. Now @save-cach... Eric Faulhaber
03:05 PM Base Language Feature #6819: refactor FWD proxy implementation to use ReflectASM instead of Java Method reflection
I understand there is no performance difference in lambdas themselves. I'm wondering about the call to @LambdaFactor... Greg Shah
02:51 PM Base Language Feature #6819: refactor FWD proxy implementation to use ReflectASM instead of Java Method reflection
Greg Shah wrote:
> The dynamic generation of the lambdas for an external procedure is only done the first time the e...
Constantin Asofiei
10:44 AM Base Language Feature #6819: refactor FWD proxy implementation to use ReflectASM instead of Java Method reflection
The dynamic generation of the lambdas for an external procedure is only done the first time the external proc is load... Greg Shah
10:22 AM Base Language Feature #6819: refactor FWD proxy implementation to use ReflectASM instead of Java Method reflection
Eric: Are you OK with the proxy and persistence changes? Greg Shah
10:22 AM Base Language Feature #6819: refactor FWD proxy implementation to use ReflectASM instead of Java Method reflection
Code Review 6819_20221223_6129b_14341.patch
I have no objections.
Greg Shah
02:48 PM Database Feature #6830: find and fix all SQL SELECT statements with inlined literal arguments, and rewrite...
Radu, what is the state of this task? Was anything committed to 3821c? Constantin Asofiei
02:44 PM Base Language Support #4032: block/transaction processing context-local and other performance improvements
Constantin Asofiei wrote:
> * I think I'll do some experimenting if keeping the reference of @ProcedureManager$Proce...
Constantin Asofiei
09:51 AM Database Feature #6444: dataset improvements
Committed the current state of the RECURSIVE DATA-RELATION support to 6444a/14473. Igor Skornyakov
03:55 AM Database Feature #6444: dataset improvements
Created task branch 6444a from the trunk Igor Skornyakov
08:17 AM Database Feature #6995: possibly support NO-UNDO temporary tables directly in H2
If we are doing any substantial work implementing NO-UNDO in the customer scenario, then let's move ahead. Greg Shah
05:09 AM Database Feature #6995: possibly support NO-UNDO temporary tables directly in H2
Eric Faulhaber wrote:
> > Furthermore, I just added @OrmNoUndoTrace@ in 3821c/rev. 14470. This is used to analyze th...
Alexandru Lungu
02:29 AM Database Feature #6995: possibly support NO-UNDO temporary tables directly in H2
Constantin Asofiei wrote:
> Eric Faulhaber wrote:
> > Constantin, do you see measurable @SQLRedo@ and/or @Savepoint...
Eric Faulhaber
02:17 AM Database Feature #6995: possibly support NO-UNDO temporary tables directly in H2
Eric Faulhaber wrote:
> Constantin, do you see measurable @SQLRedo@ and/or @SavepointManager@ activity in your profi...
Constantin Asofiei
02:02 AM Database Feature #6995: possibly support NO-UNDO temporary tables directly in H2
Alexandru Lungu wrote:
> I tested with a large customer application (~10 mins POC) and I got only 7 redo operation...
Eric Faulhaber
01:38 AM Database Feature #6995: possibly support NO-UNDO temporary tables directly in H2
Constantin, do you see measurable @SQLRedo@ and/or @SavepointManager@ activity in your profiling of the large applica... Eric Faulhaber
03:33 AM Database Feature #6448 (Closed): make location of LOB files configurable for import
Thank you. Eric Faulhaber
03:25 AM Database Feature #6448 (Feedback): make location of LOB files configurable for import
Eric Faulhaber wrote:
> Igor, if you've already tested this, the only thing that remains is to update the [[p2j:Data...
Igor Skornyakov
02:44 AM Database Feature #6448: make location of LOB files configurable for import
Igor, if you've already tested this, the only thing that remains is to update the [[p2j:Data_Migration#Data-Import|do... Eric Faulhaber
03:00 AM Database Feature #6928: H2 UPDATE performance improvement
Is there anything left to do, in order for FWD to use the new H2 jar by default? Is the FWD build updated? Is the jar... Eric Faulhaber
02:51 AM Database Support #6709: track nested FIND inside a related FOR loop
I've changed the way tracking is done based on #6709-33. The only change I've done to @TransactionManager@ is to retr... Dănuț Filimon
02:28 AM Database Feature #6454: database informational features
Eric Faulhaber wrote:
> The changes in @dbrestrictions.diff@ look good. Please commit it to 6129b. 6129b/14335 also ...
Igor Skornyakov
12:37 AM Database Feature #6454: database informational features
Igor Skornyakov wrote:
> Eric Faulhaber wrote:
> > Igor, other than requiring review for the patch in #6454-11 and ...
Eric Faulhaber

01/05/2023

03:05 PM Database Feature #6816: improve PreselectQuery.assembleHQL
Constantin Asofiei wrote:
> Eric, I was assuming that the SortCriterion is being used at the FQL level, before the F...
Eric Faulhaber
02:52 PM Database Feature #6816: improve PreselectQuery.assembleHQL
Constantin Asofiei wrote:
> Alexandru Lungu wrote:
> > Is the profiling done with multiple users? The cache is glob...
Eric Faulhaber
02:25 PM Database Feature #6816: improve PreselectQuery.assembleHQL
Eric, I was assuming that the SortCriterion is being used at the FQL level, before the FQL translation (dependent on ... Constantin Asofiei
02:20 PM Database Feature #6816: improve PreselectQuery.assembleHQL
Constantin Asofiei wrote:
> Also, the cache Key doesn't need the dialect - the DmoMeta already is distinct for tem...
Eric Faulhaber
11:06 AM Database Feature #6816: improve PreselectQuery.assembleHQL
I've increased the cache limit to something big (2048000) and now for 100 runs the average is only a little less wors... Constantin Asofiei
10:06 AM Database Feature #6816: improve PreselectQuery.assembleHQL
Alexandru Lungu wrote:
> Is the profiling done with multiple users? The cache is global across all users, so it is a...
Constantin Asofiei
09:15 AM Database Feature #6816: improve PreselectQuery.assembleHQL
Is the profiling done with multiple users? The cache is global across all users, so it is a synchronized data structu... Alexandru Lungu
07:59 AM Database Feature #6816: improve PreselectQuery.assembleHQL
I have a mod count for the @LRUCache.cache@ map (used by @SortCrtierionFactory@) of 11k for just 10 runs of the perfo... Constantin Asofiei
07:45 AM Database Feature #6816: improve PreselectQuery.assembleHQL
Unfortunately the patch shows a slowdown in the performance testing. I'm not sure from where it is. I wonder if is ... Constantin Asofiei
06:26 AM Database Feature #6816: improve PreselectQuery.assembleHQL
Sure, here you go. I've updated the file so the command @patch@ now works on 6129b. Radu Apetrii
02:37 PM Base Language Feature #6821: java collection performance
> You also need checks if this is the single resource in the chain being deleted, in this firstResource/lastResource ... Stanislav Lomany
06:20 AM Base Language Feature #6821: java collection performance
Constantin Asofiei wrote:
> Attached is a space-delimited file with all FOR EACH loops which have a List, ArrayList ...
Constantin Asofiei
04:26 AM Base Language Feature #6821: java collection performance
Forgot to add the csv file. Constantin Asofiei
04:25 AM Base Language Feature #6821: java collection performance
Keep in mind that this:... Constantin Asofiei
04:25 AM Base Language Feature #6821: java collection performance
Stanislav Lomany wrote:
> > what branch and revision did you use for this patch?
>
> 3821c rev 14467.
The patch ...
Constantin Asofiei
02:20 PM Database Feature #6825: improve table meta runtime (TableMapper and other)
Totally agree! Ovidiu Maxiniuc
02:02 PM Database Feature #6825: improve table meta runtime (TableMapper and other)
The @MutableFieldInfo@ is being kept in @TableMapper$TempTableMapper.fieldInfo@ by the @TempTable@ instance. So I se... Constantin Asofiei
01:54 PM Base Language Support #4032: block/transaction processing context-local and other performance improvements
Attached is a trace file with @ContextLocal.get@ usage in a customer application. This is expanded on 3 levels, leve... Constantin Asofiei
12:59 PM Database Feature #7020: always use "expanded" extent fields
> AFAIK, the Open Client proxy generation rules are general purpose, not specific to @<customer>@. Constantin, can y... Greg Shah
12:58 PM Database Feature #7020: always use "expanded" extent fields
From Eric:
I think you have understood it exactly right.
> If we get rid of the custom name (I am not sure but ...
Greg Shah
12:56 PM Database Feature #7020: always use "expanded" extent fields
From Ovidiu:
I read this email several times in order to get the things right. I understand that the denormalizati...
Greg Shah
12:55 PM Database Feature #7020: always use "expanded" extent fields
From Eric:
While you should read the whole history there, I can summarize as follows:
* We think there will be ...
Greg Shah
12:52 PM Database Feature #7020 (Test): always use "expanded" extent fields
Greg Shah
08:10 AM Base Language Feature #3853: implement LOG-MANAGER runtime
> > Is this different than @MESSAGE VIEW-AS ALERT-BOX@? Or is this just the case where the 4GL handles the really lo... Greg Shah
08:10 AM Base Language Feature #3853: implement LOG-MANAGER runtime
> It is @ContextLocal@, which creates an instance of the log manager wrapper through @class Fallback extends ThreadLo... Greg Shah
07:57 AM Base Language Feature #3853: implement LOG-MANAGER runtime
Greg Shah wrote:
> We must solve this properly. The behavior needs to match the 4GL implementation while implementi...
Galya B
07:51 AM Base Language Feature #3853: implement LOG-MANAGER runtime
Greg Shah wrote:
> Is this different than @MESSAGE VIEW-AS ALERT-BOX@? Or is this just the case where the 4GL handl...
Galya B
07:49 AM Base Language Feature #3853: implement LOG-MANAGER runtime
Greg Shah wrote:
> > Our implementation of @LOG-MANAGER@ runs purely on the server.
>
> It is certainly preferab...
Galya B
07:48 AM Base Language Feature #3853: implement LOG-MANAGER runtime
> Do we want also the 32767 chars limit for @LOG-MANAGER:WRITE-MESSAGE@?
Yes. Also, please implement the limit of...
Greg Shah
06:47 AM Base Language Feature #3853: implement LOG-MANAGER runtime
A few observations in relationship to max log message length (tested):
* By default statement length is limited to...
Galya B
04:47 AM Base Language Feature #3853: implement LOG-MANAGER runtime
Greg Shah wrote:
> Does the 4GL have an implicit set of settings for @LOG-MANAGER@ in an appserver process? If so, ...
Galya B
03:50 AM Base Language Feature #3853: implement LOG-MANAGER runtime
Constantin Asofiei wrote:
> Galya: please post what logmanager related config needs to added.
4GL LOG-MANAGER con...
Galya B
03:06 AM Base Language Feature #3853: implement LOG-MANAGER runtime
Greg Shah wrote:
> For @logthreshold@ and @numlogfiles@ and the other items from #3853-19, we should be able to conf...
Constantin Asofiei
02:25 AM Database Feature #6371: implement SAVE CACHE statement
Boris Schegolev wrote:
> I disabled DMO unloading in @SchemaCheck@, although I don't fully understand reasoning behi...
Eric Faulhaber

01/04/2023

06:38 PM Database Feature #6371: implement SAVE CACHE statement
I disabled DMO unloading in @SchemaCheck@, although I don't fully understand reasoning behind it.
Also, I reworked...
Boris Schegolev
03:56 PM Database Feature #6444: dataset improvements
Ovidiu Maxiniuc wrote:
> You said _"The same query executed against the same H2 database with H2 Console with the sa...
Igor Skornyakov
03:38 PM Database Feature #6444: dataset improvements
You said _"The same query executed against the same H2 database with H2 Console with the same JDBC driver (fwd-h2-1.4... Ovidiu Maxiniuc
03:00 PM Database Feature #6444: dataset improvements
Ovidiu Maxiniuc wrote:
> Igor Skornyakov wrote:
> > I have a strange situation.
> > In fact, it is the same for al...
Igor Skornyakov
02:35 PM Database Feature #6444: dataset improvements
Igor Skornyakov wrote:
> I have a strange situation.
> In fact, it is the same for all 3 dialects. For temp tables,...
Ovidiu Maxiniuc
10:19 AM Database Feature #6444: dataset improvements
I have a strange situation.
The second pass query provides a correct result set for PostgreSQL and MariaDB, but retu...
Igor Skornyakov
02:44 PM Base Language Feature #6817 (WIP): replace INSTANTIATING-PROCEDURE and other handle<ExternalProgram> with the a...
Hynek Cihlar
11:23 AM Base Language Feature #6817: replace INSTANTIATING-PROCEDURE and other handle<ExternalProgram> with the actual ...
In Eclipse, there is a way to look for a field or local variable of a certain type. Other IDEs should have something... Constantin Asofiei
12:46 PM Base Language Feature #3853: implement LOG-MANAGER runtime
Greg Shah wrote:
> From Galya via email:
>
> > I've tested gui, batch, web gui clients and they are working well ...
Constantin Asofiei
12:33 PM Base Language Feature #3853: implement LOG-MANAGER runtime
From Galya via email:
> I've tested gui, batch, web gui clients and they are working well with @LOG-MANAGER@. But ...
Greg Shah
12:29 PM Base Language Feature #3853: implement LOG-MANAGER runtime
For @logthreshold@ and @numlogfiles@ and the other items from #3853-19, we should be able to configure these via 2 me... Greg Shah
08:04 AM Base Language Feature #3853: implement LOG-MANAGER runtime
Galya Bogdanova wrote:
> open a @-debugalert@ separate task (maybe #4065 or this one #3853) to migrate the logic to ...
Galya B
07:55 AM Base Language Feature #3853: implement LOG-MANAGER runtime
Galya Bogdanova wrote:
> P.S.S. The easiest quickest patch to complete #5753 would be to just switch the dependency ...
Galya B
04:58 AM Base Language Feature #3853: implement LOG-MANAGER runtime
*Current clientlog implementation and -debugalert*
Currently the code uses @-clientlog@ startup param to enable lo...
Galya B
03:10 AM Base Language Feature #3853: implement LOG-MANAGER runtime
*Rotation and testing*
A substantial part of LOG-MANAGER's logic is related to handling rotation of log files and is...
Galya B
11:30 AM Database Feature #6816: improve PreselectQuery.assembleHQL
Radu, can you port this patch to 6129b? I'd like to test the impact on a customer's application. Constantin Asofiei
08:54 AM Base Language Feature #6821: java collection performance
> what branch and revision did you use for this patch?
3821c rev 14467.
Stanislav Lomany
05:17 AM Base Language Feature #6821: java collection performance
Stanislav Lomany wrote:
> > Related to map access (hashCode calls):
> > ** @HandleChain.delete@ 880k
>
> Maybe w...
Constantin Asofiei
05:13 AM Base Language Feature #6821: java collection performance
Stanislav Lomany wrote:
> Please review the diff which replaces "for-each" loops with indexed "for" loops (I'll add ...
Constantin Asofiei
08:32 AM Base Language Feature #6824 (WIP): lazy initialization of collection class members
Constantin Asofiei
05:28 AM Database Bug #6829: H2 forces re-parse of all prepared statements when metadata is changed
Alexandru, I think a first pass would be to change the FQL generation to use @c1@, @c2@, etc as aliases instead of th... Constantin Asofiei
05:14 AM Database Feature #6995 (WIP): possibly support NO-UNDO temporary tables directly in H2
I've added a @OrmRedo@ Timer JMX in 3821c/rev. 14469. I've debugged some local tests to find out a "pattern" scenario... Alexandru Lungu

01/03/2023

02:54 PM Base Language Feature #6821: java collection performance
> Related to map access (hashCode calls):
> ** @HandleChain.delete@ 880k
Maybe we don't need to perform @first/la...
Stanislav Lomany
02:35 PM Database Feature #6371: implement SAVE CACHE statement
The changes to support the DMO interface/class unloading and re-use at the proxy level are turning into something mor... Eric Faulhaber
02:27 PM Database Feature #6371: implement SAVE CACHE statement
Greg Shah wrote:
> Let's assume that only the denormalized extents will be supported for now. It doesn't make sense...
Eric Faulhaber
09:47 PM Database Feature #6371: implement SAVE CACHE statement
Let's assume that only the denormalized extents will be supported for now. It doesn't make sense to add the more com... Greg Shah
11:33 AM Database Feature #6444: dataset improvements
Igor Skornyakov wrote:
> I've changed my test so that data sources used for FILL get data from the permanent tables....
Igor Skornyakov
11:09 AM Database Feature #6444: dataset improvements
I've changed my test so that data sources used for FILL get data from the permanent tables.
However, at runtime, I s...
Igor Skornyakov
08:33 AM Base Language Feature #3853: implement LOG-MANAGER runtime
> Do we show the same error when LOG-MANAGER:WRITE-MESSAGE tries to write more than 15000 chars? If yes, then we'll h... Greg Shah
07:08 AM Database Bug #6829: H2 forces re-parse of all prepared statements when metadata is changed
Constantin Asofiei wrote:
> Alexandru, I have in a heap dump @UnclosablePreparedStatement@ instances with ~90KB reta...
Alexandru Lungu
03:48 AM Database Feature #6720 (WIP): lazy hydration
Eric Faulhaber

01/02/2023

05:34 PM Database Feature #6371: implement SAVE CACHE statement
Boris Schegolev wrote:
> > If there are any other critical configuration values that cannot be determined by defau...
Eric Faulhaber
05:21 PM Base Language Feature #6821: java collection performance
Please review the diff which replaces "for-each" loops with indexed "for" loops (I'll add headers later), specificall... Stanislav Lomany
 

Also available in: Atom