Project

General

Profile

Activity

From 12/29/2022 to 01/27/2023

01/28/2023

11:51 PM 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
08:22 PM 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

01/27/2023

12:08 PM 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 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 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 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 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 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 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
09:16 AM 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 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
07:58 AM 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
10:58 PM 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:20 PM 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 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 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 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 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 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 Feature #6444: dataset improvements
I've encountered a strange problem.
Consider the following program:...
Igor Skornyakov
05:20 PM 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 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 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 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 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
10:13 AM 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
08:21 AM 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 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 Feature #7076: make CAN-FIND avoid hydration
Let's go for the quick win. Greg Shah
04:43 PM 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 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 Feature #7076 (Closed): make CAN-FIND avoid hydration
Greg Shah
04:07 PM 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 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 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 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 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
10:25 AM 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 Feature #6928: H2 UPDATE performance improvement
Radu, please debug this and fix it. Constantin Asofiei
05:34 AM 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
06:11 AM 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 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 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 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 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

05:32 PM 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 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 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 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 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 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 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 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 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 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 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
07:42 PM 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 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 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 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 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 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 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 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 Feature #7064 (Rejected): Analyze the performance impact of the implicit meta schema in H2
Alexandru Lungu
02:52 PM 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 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 Feature #7062 (Closed): Direct access to H2 internals to solve basic queries
Alexandru Lungu
12:33 PM 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 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
09:25 AM 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 Feature #7066 (WIP): Implement multi-table indexed query in H2
Alexandru Lungu
06:47 AM 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 Feature #7063 (New): Support FIRST/LAST join directly in H2
Alexandru Lungu
05:36 AM 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 Feature #7061 (Closed): Enable the use of lazy result sets in H2
Alexandru Lungu
04:50 AM 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 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 Feature #7060 (Closed): Consider using wildcard selection to reduce SQL size
Alexandru Lungu
02:53 AM 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 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 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 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 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 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 Bug #7059 (WIP): FWD shouldn't raise errors for non-numeric extent indexes.
Stanislav Lomany
12:57 PM 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 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 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 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 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 Support #7058 (Closed): get the FWD fork of the H2 code base under version control
Eric Faulhaber
12:29 PM 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 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 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 Feature #6816: improve PreselectQuery.assembleHQL
Looks good, no concerns. Alexandru Lungu
09:33 AM Feature #6816: improve PreselectQuery.assembleHQL
I think this can be committed to 6129b. Alexandru, any concerns? Constantin Asofiei
06:52 AM 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 Feature #6816: improve PreselectQuery.assembleHQL
I've tried the patch with a customer application and there is an abend:... Constantin Asofiei
10:34 AM Support #6714 (Review): check if there is an optimization opportunity when copying temp-tables ba...
Alexandru Lungu
09:53 AM 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 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 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
04:55 AM 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 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 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 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 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 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 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 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 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 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 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 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 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 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
10:48 AM 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 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 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 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 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 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 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 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 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 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 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 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 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
02:45 PM 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 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 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 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 Feature #6444: dataset improvements
OK, then if Constantin has no objection, let's go with the manual retrofit approach. Eric Faulhaber
11:20 AM 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 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 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 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 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 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 Feature #6444: dataset improvements
Rebased the task branch 6444a to the trunk/14480.
Pushed up to revision 14484.
Igor Skornyakov
06:11 AM 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 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 Bug #7047: Problem with AdaptiveQuery and ScrollableResults
Added attachements Igor Skornyakov
04:04 AM 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 Bug #7047 (New): Problem with AdaptiveQuery and ScrollableResults
Igor Skornyakov
07:42 PM 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

05:53 PM 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 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 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 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 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 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 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 Feature #6444: dataset improvements
Igor Skornyakov wrote:
> Regarding #6444-99:
>
> The situation is a little confusing.
> The @AdaptiveQuery.execu...
Igor Skornyakov
11:24 AM Feature #6444: dataset improvements
Regarding #6444-99:
The situation is a little confusing.
The @AdaptiveQuery.executeQuery()@ instead of creating @...
Igor Skornyakov
09:30 AM 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 Feature #6444: dataset improvements
I've got a strange exception.
A very simple test...
Igor Skornyakov
04:57 AM 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 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 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 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
01:28 AM 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 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 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 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 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
03:28 PM 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 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 Feature #7037: remove dirty share manager
7037a has been merged into the trunk as bzr revision 14478. Stanislav Lomany
09:41 AM Feature #7037: remove dirty share manager
Created task branch 7037a from FWD trunk revision 14477. Stanislav Lomany
08:00 AM 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 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 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 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 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 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 Feature #6444: dataset improvements
What is the reason to use @maxResults@ and @startOffset@ in the @QueryKey@ for the @Persistence.staticQueryCache@?
I...
Igor Skornyakov
08:03 AM 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 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

01/15/2023

05:13 PM 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 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 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 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 Feature #6444: dataset improvements
Fixed second-pass query generation for queries with CONTAINS operator.
Committed to 6444a/14475.
Igor Skornyakov
12:13 AM 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 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 Feature #7037: remove dirty share manager
Let's make sure that Hotel works properly with your changes. Greg Shah
07:17 AM 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
01:36 AM 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 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 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 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 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 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 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
04:51 PM 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 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 Feature #7037 (WIP): remove dirty share manager
Stanislav Lomany
11:43 AM 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 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 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 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 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 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
10:36 AM 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 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 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 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 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
06:25 AM 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 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 Feature #7037 (Test): remove dirty share manager
Eric Faulhaber
10:54 AM 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 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 Feature #6444: dataset improvements
Ovidiu Maxiniuc wrote:
> Executing @.next()@ will cause the result to advance. You lose the object of interest. You ...
Igor Skornyakov
09:33 AM 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 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 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 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 Bug #7035 (Closed): Extract query parameters from statically converted FQL
Alexandru Lungu

01/11/2023

03:22 PM 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 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 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 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 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 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 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 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 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
09:18 AM 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 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
07:01 AM Feature #6825: improve table meta runtime (TableMapper and other)
The changes for #6825-4 are in 6129b/14347 Constantin Asofiei
06:40 AM Feature #6830 (Review): find and fix all SQL SELECT statements with inlined literal arguments, an...
Radu Apetrii
05:01 AM 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 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 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 Feature #6371: implement SAVE CACHE statement
In the end the solution is pretty simple - see revision 14448. Boris Schegolev
12:42 PM 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 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 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 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
08:39 AM 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 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/07/2023

10:20 PM 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 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 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 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

04:45 PM 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 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 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 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
02:48 PM 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
09:51 AM Feature #6444: dataset improvements
Committed the current state of the RECURSIVE DATA-RELATION support to 6444a/14473. Igor Skornyakov
03:55 AM Feature #6444: dataset improvements
Created task branch 6444a from the trunk Igor Skornyakov
08:17 AM 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 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 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 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 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 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 Feature #6448 (Closed): make location of LOB files configurable for import
Thank you. Eric Faulhaber
03:25 AM 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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:20 PM Feature #6825: improve table meta runtime (TableMapper and other)
Totally agree! Ovidiu Maxiniuc
02:02 PM 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
12:59 PM 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 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 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 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 Feature #7020 (Test): always use "expanded" extent fields
Greg Shah
02:25 AM 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 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 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 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 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 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 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
11:30 AM 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
05:28 AM 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 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:35 PM 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 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 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 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 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
07:08 AM 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 Feature #6720 (WIP): lazy hydration
Eric Faulhaber

01/02/2023

05:34 PM 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

12/31/2022

03:29 AM Feature #6444: dataset improvements
Eric Faulhaber wrote:
> If I understand the issue correctly, I respectfully disagree. In the event there is no expli...
Igor Skornyakov
02:56 AM Feature #6444: dataset improvements
Greg Shah wrote:
> > Greg, please correct me if I am overly aggressive on this.
>
> If the application code can b...
Eric Faulhaber
02:17 AM Feature #6444: dataset improvements
Greg Shah wrote:
> In this case, I suspect we should implement the application-visible behavior.
I see. In this c...
Igor Skornyakov
02:15 AM Feature #6444: dataset improvements
Ovidiu Maxiniuc wrote:
> I understand that, ultimately, the content of the databases (ABL and FWD) are identically a...
Igor Skornyakov

12/30/2022

06:11 PM Feature #6371: implement SAVE CACHE statement
I added an implementation for SchemaValidator + unit test for it. See revision 14442. Boris Schegolev
11:00 AM Feature #6371: implement SAVE CACHE statement
> Do we have an example of the table structure where such 2-field DTTZ storage is used? First column is DATETIME and ... Greg Shah
05:07 PM Feature #6444: dataset improvements
> Greg, please correct me if I am overly aggressive on this.
If the application code can be implemented to rely up...
Greg Shah
03:19 PM Feature #6444: dataset improvements
Well, the _binary_ might not have been the best attribute here to describe the compatibility.
I understand that, u...
Ovidiu Maxiniuc
02:35 PM Feature #6444: dataset improvements
Ovidiu Maxiniuc wrote:
> I understand that. Can we isolate this damage to recursive relations only? These cases are ...
Igor Skornyakov
02:11 PM Feature #6444: dataset improvements
Igor Skornyakov wrote:
>
> > > Should we care about the order in which records are added to the target tables dur...
Ovidiu Maxiniuc
01:59 PM Feature #6444: dataset improvements
Ovidiu Maxiniuc wrote:
> > I understand that refactoring from using a 'plain' query string (@hql@) to a query string...
Igor Skornyakov
01:34 PM Feature #6444: dataset improvements
Igor Skornyakov wrote:
> I understand that refactoring from using a 'plain' query string (@hql@) to a query string h...
Ovidiu Maxiniuc

12/29/2022

03:23 PM Feature #6371: implement SAVE CACHE statement
I pushed an update for error handling and other minor changes - rev. 14441.
Greg Shah wrote:
> We have 2 customer...
Boris Schegolev
12:14 AM Feature #6371: implement SAVE CACHE statement
Boris Schegolev wrote:
> Also, for the primary key: I guess we need to add a validation before registering a new tab...
Eric Faulhaber
 

Also available in: Atom