Project

General

Profile

Activity

From 12/12/2022 to 01/10/2023

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

12/31/2022

03:29 AM Database 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 Database 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 Database 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 Database 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 Database Feature #6371: implement SAVE CACHE statement
I added an implementation for SchemaValidator + unit test for it. See revision 14442. Boris Schegolev
11:00 AM Database 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 Database 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 Database 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 Database 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 Database 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 Database 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 Database 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 Database 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 Database 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
07:57 PM Database Feature #6371: implement SAVE CACHE statement
>> 2 What is the issue with timezoned types (timestamp with time zone)?
>
> We need to support them ultimately, but...
Greg Shah

12/28/2022

04:47 PM Database Feature #6371: implement SAVE CACHE statement
Also, for the primary key: I guess we need to add a validation before registering a new table to check that the table... Boris Schegolev
04:41 PM Database Feature #6371: implement SAVE CACHE statement
Eric Faulhaber wrote:
> Before you changed it to "TODO: Surrogate Primary Key", the note for 8-byte integer read, "T...
Boris Schegolev
02:09 PM Database Feature #6371: implement SAVE CACHE statement
Boris Schegolev wrote:
> I updated the documentation / WIKI page. A few questions here:
>
> 1 What's the TODO for...
Eric Faulhaber
01:59 PM Database Feature #6444: dataset improvements
> If this blocks you from making headway on the recursive FILL operation, please work on another item that needs atte... Igor Skornyakov
01:51 PM Database Feature #6444: dataset improvements
Eric Faulhaber wrote:
> I think we should wait for Ovidiu's input when he returns before undertaking any massive cha...
Igor Skornyakov
01:43 PM Database Feature #6444: dataset improvements
Eric Faulhaber wrote:
> Igor Skornyakov wrote:
> > [...]
> > I understand that refactoring from using a 'plain' qu...
Eric Faulhaber
01:40 PM Database Feature #6444: dataset improvements
Igor Skornyakov wrote:
> [...]
> I understand that refactoring from using a 'plain' query string (@hql@) to a query...
Eric Faulhaber
01:38 PM Database Feature #6444: dataset improvements
Eric Faulhaber wrote:
> I don't know what the intent of this variable was, maybe something that is only changed for ...
Igor Skornyakov
01:37 PM Database Feature #6444: dataset improvements
Igor Skornyakov wrote:
> At this moment it looks that @FqlToSqlConverter.generateUniqueSqlColumnNames@ is always @tr...
Eric Faulhaber
05:30 AM Database Feature #6444: dataset improvements
At this moment it looks that @FqlToSqlConverter.generateUniqueSqlColumnNames@ is always @true@.
Can I rely on this?
...
Igor Skornyakov
02:56 AM Database Feature #6444: dataset improvements
Working on the second pass query for the recursive data-relation FILL support I have to deal with the situation when ... Igor Skornyakov
07:27 AM Base Language Feature #6410: implement additional built-in OO classes/interfaces
Greg Shah wrote:
> Yes, please use @PROVERSION@ and preprocessing to conditionally implement logic by OE version.
...
Marian Edu

12/27/2022

05:28 PM Database Feature #6371: implement SAVE CACHE statement
I updated the documentation / WIKI page. A few questions here:
# What's the TODO for Surrogate Primary Key about?
...
Boris Schegolev

12/25/2022

04:20 AM Database Feature #6444: dataset improvements
Igor Skornyakov wrote:
> I think that we also can avoid it if the DATA-SOURCE QUERY uses a single table but at this ...
Igor Skornyakov

12/23/2022

11:55 AM Base Language Feature #6824: lazy initialization of collection class members
Some notes :
* @BufferImpl.callbacks@ can be lazily created, not all buffers are used in FILL operations.
* @Record...
Constantin Asofiei
11:15 AM Database Feature #6371: implement SAVE CACHE statement
Eric Faulhaber wrote:
> That seems like a great idea, as long as column-level comments are supported in @create tabl...
Boris Schegolev
09:45 AM Database Feature #6371: implement SAVE CACHE statement
> As for branching, in git I would rebase 6371a onto 6129b. Not sure how to do that in Bazaar and don't want to break... Greg Shah
01:32 AM Database Feature #6371: implement SAVE CACHE statement
Boris Schegolev wrote:
> I am implementing one-to-many SQL->4GL type mappings. I would only suggest to use column's ...
Eric Faulhaber
09:43 AM Database Feature #6444: dataset improvements
In the relation model, the physical order or the records in the table is irrelevant and the order of records in the r... Igor Skornyakov
08:30 AM Base Language Feature #3853: implement LOG-MANAGER runtime
@LOG-MANAGER:WRITE-MESSAGE@ supports by default text up to 15000 characters (actually it should be less, since that i... Galya B
05:45 AM Base Language Feature #6819: refactor FWD proxy implementation to use ReflectASM instead of Java Method reflection
Constantin Asofiei wrote:
> Constantin Asofiei wrote:
> > Attached patch is built on top of #6939 patch. Eric, ple...
Constantin Asofiei

12/22/2022

05:09 PM Database Feature #6371: implement SAVE CACHE statement
I am implementing one-to-many SQL->4GL type mappings. I would only suggest to use column's comment property for 4GL t... Boris Schegolev
04:26 AM Database Feature #6371: implement SAVE CACHE statement
Boris, please work on the validation of the mutable database requirements described in the [[p2j:Non-Standard_Save_Ca... Eric Faulhaber
09:51 AM Database Support #6709: track nested FIND inside a related FOR loop
Eric: Please review and advise. Greg Shah
09:49 AM Database Support #6709: track nested FIND inside a related FOR loop
Code Review 6709-20221222.diff
The conversion changes seem reasonable.
Do we really need to implement this as p...
Greg Shah
08:40 AM Database Support #6709: track nested FIND inside a related FOR loop
I will try to patch a customer application I have on my development environment to test the changes. If everything is... Alexandru Lungu
07:02 AM Database Support #6709: track nested FIND inside a related FOR loop
I managed to convert Hotel GUI and a few smaller tests and use FieldReference. I actually didn't make use of @convert... Dănuț Filimon
09:50 AM Database Support #7004 (New): eliminate the off-end processing in the TransactionManager and minimize the ...
Greg Shah

12/21/2022

02:29 PM Base Language Feature #6827: reduce the memory footprint of WrappedResource implementations: replace BDTs with ...
I think the @object@ fields need to remain as-is, for the reference counting to work (which affects when these get de... Constantin Asofiei
02:28 PM Base Language Feature #6827: reduce the memory footprint of WrappedResource implementations: replace BDTs with ...
This code:... Constantin Asofiei
01:19 PM Runtime Infrastructure Feature #6939: improve proxy performance by hard-coding method invocation
The correct patch is this, forgot to do @bzr add@ before doing @bzr diff@. Constantin Asofiei
11:55 AM Runtime Infrastructure Feature #6939: improve proxy performance by hard-coding method invocation
Greg Shah wrote:
> Yes, I was planning for all performance work to go in there.
OK, but not all performance work fr...
Constantin Asofiei
09:42 AM Runtime Infrastructure Feature #6939: improve proxy performance by hard-coding method invocation
Yes, I was planning for all performance work to go in there. Greg Shah
09:39 AM Runtime Infrastructure Feature #6939: improve proxy performance by hard-coding method invocation
Greg Shah wrote:
> Do you have an updated version of the patch for 3821c? It does not apply cleanly on 3821c rev 14...
Constantin Asofiei
09:36 AM Runtime Infrastructure Feature #6939: improve proxy performance by hard-coding method invocation
Do you have an updated version of the patch for 3821c? It does not apply cleanly on 3821c rev 14461.
Eric: This s...
Greg Shah
11:30 AM Database Feature #6371: implement SAVE CACHE statement
I pushed a cleanup for PostgreSQL dialect - there were MySQL types mixed in. Boris Schegolev
02:11 AM Database Feature #6371: implement SAVE CACHE statement
Revision 6371a/14438 works around the @SchemaDictionary@ issue described in #6371-80, but the workaround is limited, ... Eric Faulhaber
10:35 AM User Interface Feature #6764: Improve trigger selection for keyboard events.
6764.08.patch checked in to 3821c revision 14462. Hynek Cihlar
10:06 AM User Interface Feature #6764: Improve trigger selection for keyboard events.
Yes, please go ahead. Greg Shah
10:05 AM User Interface Feature #6764: Improve trigger selection for keyboard events.
Code review 6764.08.patch. The changes look good. Can I merge it to 3821c? Hynek Cihlar
09:38 AM Base Language Feature #6819: refactor FWD proxy implementation to use ReflectASM instead of Java Method reflection
Constantin Asofiei wrote:
> Attached patch is built on top of #6939 patch. Eric, please review and use this one for...
Constantin Asofiei
03:55 AM Runtime Infrastructure Bug #5701: logfile names for -O outputToFile use the spawner pid instead of the Java (FWD client ...
I'm not working on this task at the moment, but I randomly got an idea and just want to document it here, since we mi... Galya B

12/20/2022

02:19 PM Base Language Feature #6819: refactor FWD proxy implementation to use ReflectASM instead of Java Method reflection
Attached patch is built on top of #6939 patch. Eric, please review and use this one for your tests. Constantin Asofiei
04:40 AM Base Language Feature #6819: refactor FWD proxy implementation to use ReflectASM instead of Java Method reflection
I've tested with a 'static bytecode' (i.e. 10k .java files each with 300 lambdas, checked the disassembled .class and... Constantin Asofiei
07:47 AM Base Language Feature #7000: Replace old-style synchronization primitives with java.util.concurrent classes
Greg Shah wrote:
> Do you have specific areas seen in profiling where these old-style primitives are heavily involve...
Igor Skornyakov
06:24 AM Base Language Feature #7000: Replace old-style synchronization primitives with java.util.concurrent classes
Do you have specific areas seen in profiling where these old-style primitives are heavily involved? Greg Shah
03:22 AM Base Language Feature #7000: Replace old-style synchronization primitives with java.util.concurrent classes
FWD code contains many places where old-style synchronization primitives (@synchronized@ blocks, @wait@/@notify@) are... Igor Skornyakov
02:58 AM Base Language Feature #7000 (New): Replace old-style synchronization primitives with java.util.concurrent classes
Igor Skornyakov
05:42 AM Database Support #6709: track nested FIND inside a related FOR loop
Committed 3821c/rev.14460. Added nested find annotation and report. Any annotated @FIND@ that is nested in a @FOR EAC... Dănuț Filimon

12/19/2022

06:09 PM Database Support #6709: track nested FIND inside a related FOR loop
Yes. Greg Shah
03:41 AM Database Support #6709: track nested FIND inside a related FOR loop
Greg Shah wrote:
> You've tested conversion for both the large customer application and also Hotel GUI?
Yes, both...
Dănuț Filimon
06:08 PM Base Language Feature #3853: implement LOG-MANAGER runtime
> > The base implementation is already handled at conversion and it is stubbed out in the runtime.
>
> Does it mea...
Greg Shah
06:35 AM Base Language Feature #3853: implement LOG-MANAGER runtime
Greg Shah wrote:
> The base implementation is already handled at conversion and it is stubbed out in the runtime.
...
Galya B
05:09 PM Runtime Infrastructure Bug #5703: rationalize, standardize and simplify the client-side log file name configuration
> > Right now, I don't foresee any changes to conversion needed. If that changes, I would agree with this idea.
>
...
Greg Shah
06:51 AM Runtime Infrastructure Bug #5703: rationalize, standardize and simplify the client-side log file name configuration
Greg Shah wrote:
> Galya Bogdanova wrote:
>
> > *Conversion* code should be reworked to not be broken by upcoming ...
Galya B
01:32 PM Database Bug #6834: RAQ navigation on records having NULL values on same index components
The issue is described with details and example in #6755. I will copy it here because that task contains sensitive da... Ovidiu Maxiniuc
12:03 PM User Interface Feature #6764: Improve trigger selection for keyboard events.
Please see #6667-268 for regression tests results for @6764.08.patch@ Tomasz Domin
11:28 AM Base Language Feature #6821: java collection performance
For @ArrayList.iterator()@, the top callers are:
* @PreselectQuery.components()@ - 430k
* @AnnotatedAst.notifyListe...
Constantin Asofiei
10:26 AM Base Language Feature #6821: java collection performance
The ones that are most important are listed in #6821-4. We aren't suggesting changing things everywhere. Greg Shah
10:22 AM Base Language Feature #6821: java collection performance
That may be true. There're about 2k foreach loops, and about 10% of them can be updated. If we want, we can can limit... Stanislav Lomany
09:57 AM Base Language Feature #6821: java collection performance
Stanislav Lomany wrote:
> > Actually, I doubt that such optimization will result in any significant performance in a...
Igor Skornyakov
09:56 AM Base Language Feature #6821: java collection performance
Small improvements over millions of calls add up. The fact that the profiling tools don't show obvious hotspots mean... Greg Shah
09:45 AM Base Language Feature #6821: java collection performance
Greg Shah wrote:
> > I would perform benchmarking/profiling first.
>
> This is what was done. See #6821-4.
Th...
Igor Skornyakov
09:31 AM Base Language Feature #6821: java collection performance
> The point with all the Map and Set iterators is that they allocate lots of short-lived objects.
That's true. I m...
Stanislav Lomany
09:25 AM Base Language Feature #6821: java collection performance
> Actually, I doubt that such optimization will result in any significant performance in all situations.
I did som...
Stanislav Lomany
09:18 AM Base Language Feature #6821: java collection performance
> I would perform benchmarking/profiling first.
This is what was done. See #6821-4.
Greg Shah
05:12 AM Base Language Feature #6821: java collection performance
Actually, I doubt that such optimization will result in any significant performance in all situations. See e.g. a dis... Igor Skornyakov
04:54 AM Base Language Feature #6821: java collection performance
Stanislav Lomany wrote:
> I assume we're taking about replacing
Correct.
> I found that there're not so many plac...
Constantin Asofiei
04:45 AM Base Language Feature #6821 (WIP): java collection performance
Constantin,
> For example, using Java for-each loop for an an ArrayList instead of a @for@ and getting the element...
Stanislav Lomany
10:28 AM Database Feature #6444: dataset improvements
Ovidiu Maxiniuc wrote:
> I am not very happy with this double iteration. It implies a performance penalty. Ultimatel...
Igor Skornyakov
10:12 AM Database Feature #6444: dataset improvements
Igor Skornyakov wrote:
> I need to iterate over a DATA-SOURCE twice - first with the original QUERY and then with th...
Ovidiu Maxiniuc
09:08 AM Base Language Feature #6819: refactor FWD proxy implementation to use ReflectASM instead of Java Method reflection
> the performance decreased a lot (there may be some internal storage which affects the INVOKEDYNAMIC instruction at ... Greg Shah
09:08 AM Base Language Feature #6819: refactor FWD proxy implementation to use ReflectASM instead of Java Method reflection
From Constantin:
> More with the the lambda for ControlFlowOps, I think the lambda performance is directly proport...
Greg Shah

12/16/2022

02:59 PM Database Feature #6444: dataset improvements
Something is wrong in the @BufferImpl.fill()@ logic regarding child relations. In the @data_relation/recursive_relati... Igor Skornyakov
03:48 AM Database Feature #6444: dataset improvements
I need to iterate over a DATA-SOURCE twice - first with the original QUERY and then with the 'relaxed' one. What is t... Igor Skornyakov
10:59 AM Database Support #6709: track nested FIND inside a related FOR loop
I'm OK with the @6709-20221216.patch@.
You've tested conversion for both the large customer application and also H...
Greg Shah
09:53 AM Database Support #6709: track nested FIND inside a related FOR loop
Greg Shah wrote:
> Please post an updated patch for review.
> We emit the getter or the @FieldReference@ in @conv...
Dănuț Filimon
08:30 AM Database Support #6709: track nested FIND inside a related FOR loop
> The bug is fixed and the conversion was successful. Should I commit the changes?
Please post an updated patch fo...
Greg Shah
03:31 AM Database Support #6709: track nested FIND inside a related FOR loop
Greg Shah wrote:
> Danut, please address the bug and make sure to test conversion with that application.
The bug is...
Dănuț Filimon
09:50 AM Runtime Infrastructure Bug #5703: rationalize, standardize and simplify the client-side log file name configuration
Greg Shah wrote:
> We need both server side and client side logging. I think most of the time the server side appro...
Galya B
09:33 AM Runtime Infrastructure Bug #5703: rationalize, standardize and simplify the client-side log file name configuration
> > We are at a point where we are still heavily modifying our implementation and that includes our external API.
> ...
Greg Shah
09:33 AM Runtime Infrastructure Bug #5703: rationalize, standardize and simplify the client-side log file name configuration
Yes, @LogHelper@ can be changed. Greg Shah
09:32 AM Runtime Infrastructure Bug #5703: rationalize, standardize and simplify the client-side log file name configuration
Greg Shah wrote:
> We are at a point where we are still heavily modifying our implementation and that includes our e...
Galya B
09:31 AM Runtime Infrastructure Bug #5703: rationalize, standardize and simplify the client-side log file name configuration
Greg Shah wrote:
> At this time, I don't see how our 4GL-compatibility needs to change for this task, but I may be m...
Galya B
09:29 AM Runtime Infrastructure Bug #5703: rationalize, standardize and simplify the client-side log file name configuration
> If some FWD users want to develop their new Java code extending their app functionality, do they import / integrate... Greg Shah
09:25 AM Runtime Infrastructure Bug #5703: rationalize, standardize and simplify the client-side log file name configuration
> * Each system process should have a separate log file.
Yes
> * Screen / client drivers output on the screen e...
Greg Shah
06:49 AM Runtime Infrastructure Bug #5703: rationalize, standardize and simplify the client-side log file name configuration
A question: If some FWD users want to develop their new Java code extending their app functionality, do they import /... Galya B
08:50 AM User Interface Feature #6764: Improve trigger selection for keyboard events.
Hynek Cihlar wrote:
> Hynek Cihlar wrote:
> > 6764.07.patch checked in to 3821c revision 14417.
>
> I reverted t...
Marian Edu
08:06 AM Database Support #6714: check if there is an optimization opportunity when copying temp-tables based on mu...
I've made a mistake and used the wrong patch when testing previously. The second @removeRecords@ call didn't execute ... Dănuț Filimon
07:24 AM Runtime Infrastructure Bug #5701: logfile names for -O outputToFile use the spawner pid instead of the Java (FWD client ...
Please focus on #5703 first and pause work on this task. Greg Shah
05:48 AM Runtime Infrastructure Bug #5701: logfile names for -O outputToFile use the spawner pid instead of the Java (FWD client ...
Galya Bogdanova wrote:
> The Windows spawner creates the new process with all the needed attributes as it is now, bu...
Galya B
03:01 AM Runtime Infrastructure Bug #5701: logfile names for -O outputToFile use the spawner pid instead of the Java (FWD client ...
Galya Bogdanova wrote:
> That's where we set a @stdout@ handler to the properly renamed filename and execute the @cm...
Galya B
02:52 AM Runtime Infrastructure Bug #5701: logfile names for -O outputToFile use the spawner pid instead of the Java (FWD client ...
I have another idea of how to solve the pid issue on Windows.
The Windows spawner creates the new process with all...
Galya B
02:30 AM Runtime Infrastructure Bug #5701: logfile names for -O outputToFile use the spawner pid instead of the Java (FWD client ...
Greg Shah wrote:
> I think you can try any 4GL code which uses @DISPLAY@, @PUT@ or similar output statement without ...
Galya B
03:31 AM Base Language Bug #6999: OO methods/properties used in direct Java calls
Consider this type:... Constantin Asofiei
03:27 AM Base Language Bug #6999 (New): OO methods/properties used in direct Java calls
Constantin Asofiei

12/15/2022

02:56 PM Runtime Infrastructure Bug #5701: logfile names for -O outputToFile use the spawner pid instead of the Java (FWD client ...
> I need an ABL procedure that outputs to outputToFile to test it out.
I think you can try any 4GL code which uses...
Greg Shah
01:17 PM Runtime Infrastructure Bug #5701: logfile names for -O outputToFile use the spawner pid instead of the Java (FWD client ...
I'm attaching a diff for a demo implementation of how @%pid%@ replace and @stdout@ redirect can work in Java for back... Galya B
09:00 AM Runtime Infrastructure Bug #5701: logfile names for -O outputToFile use the spawner pid instead of the Java (FWD client ...
> Run the cmd in the spawner process itself. This looks like a more dangerous exercise, since I don't fully understan... Greg Shah
07:26 AM Runtime Infrastructure Bug #5701: logfile names for -O outputToFile use the spawner pid instead of the Java (FWD client ...
My proposal cannot actually work for Windows where @CreateProcess@ creates an independent new process without any ref... Galya B
02:11 PM Database Bug #6997: OUTPUT BY-REFERENCE records are not cleared
I returned to this testcase. I altered the original code a bit and I found more evidences in favour of confirming the... Ovidiu Maxiniuc
11:02 AM Runtime Infrastructure Bug #5703: rationalize, standardize and simplify the client-side log file name configuration
I'll use this comment to summarize the types of log files we ultimately need (it'll be updated additionally).
---...
Galya B
09:01 AM Runtime Infrastructure Bug #5703: rationalize, standardize and simplify the client-side log file name configuration
A related issue to be addressed by the change, as described in #4331:
> Standalone clients (confirmed for gui_swin...
Galya B
09:49 AM Testing Support #6858: rework existing testcases to use ABLUnit
Greg Shah wrote:
> Yes. At any given point in our development, new testcases are written for features we have no im...
Vladimir Tsichevski
08:23 AM Testing Support #6858: rework existing testcases to use ABLUnit
Yes. At any given point in our development, new testcases are written for features we have no implemented yet. It i... Greg Shah
08:21 AM Testing Support #6858: rework existing testcases to use ABLUnit
Multiple files in the @testcases@ project do not convert with FWD. Is this expected? Vladimir Tsichevski
09:28 AM Base Language Feature #6827 (WIP): reduce the memory footprint of WrappedResource implementations: replace BDTs...
Sorry, guys, I think I've reviewed all FWD classes implemening @WrappedResource@ but there're no usages of BDT. I've ... Stanislav Lomany
08:36 AM Database Feature #6816: improve PreselectQuery.assembleHQL
Another update: after the last post I started working on a Factory design pattern for @SortCriterion@. This patch inc... Radu Apetrii

12/14/2022

02:07 PM Database Feature #6444: dataset improvements
I've realized that we do not really need an auxiliary temporary table to use recursive CTE instead of iteration (see ... Igor Skornyakov
02:31 AM Database Feature #6444: dataset improvements
Ovidiu Maxiniuc wrote:
> The FILL operation is QUERY driven. And that happens for each buffer affected (that is, aft...
Igor Skornyakov
01:26 PM Base Language Feature #6819: refactor FWD proxy implementation to use ReflectASM instead of Java Method reflection
The lambdas will created like this:... Constantin Asofiei
11:46 AM Database Bug #6997: OUTPUT BY-REFERENCE records are not cleared
It does not make full sense. The BY-REFERENCE should be bound to the target table temporarily, hiding that table. As ... Ovidiu Maxiniuc
05:46 AM Database Bug #6997: OUTPUT BY-REFERENCE records are not cleared
In start.p, a temporary table @main@ is created which is assigned 1 element, then that table is used as an output par... Dănuț Filimon
05:44 AM Database Bug #6997 (New): OUTPUT BY-REFERENCE records are not cleared
Dănuț Filimon
10:01 AM Database Support #6709: track nested FIND inside a related FOR loop
Looks like the problem was caused by a @FOR FIRST table@ statement. Fixed by checking if the previous sibling of the ... Dănuț Filimon
09:23 AM Database Feature #6995: possibly support NO-UNDO temporary tables directly in H2
I am aware of the @force-no-undo@ setting which forces all tables into @no-undo@. If this flag is set, no @SavepointM... Alexandru Lungu
09:15 AM Base Language Feature #6410: implement additional built-in OO classes/interfaces
Yes, please use @PROVERSION@ and preprocessing to conditionally implement logic by OE version. Greg Shah
09:09 AM Base Language Feature #6410: implement additional built-in OO classes/interfaces
Greg Shah wrote:
> OE 11.7.x is in use right now. They can't move to OE 12 without facing serious issues which have...
Marian Edu
07:42 AM Base Language Bug #6993: OO: incorrect field names in DataTypeEnum.java
Greg Shah wrote:
> Can you do something low effort to work around this issue until we have 6129b changes ready?
I...
Vladimir Tsichevski
07:32 AM Base Language Bug #6993: OO: incorrect field names in DataTypeEnum.java
Can you do something low effort to work around this issue until we have 6129b changes ready? Greg Shah
06:27 AM Database Feature #6582: implement multi-table AdaptiveQuery
I've wrapped my head around this topic (@ProgressiveResults@ vs @ScrollingResults@) for a while now, so I can provide... Alexandru Lungu
05:55 AM Database Support #6714: check if there is an optimization opportunity when copying temp-tables based on mu...
Originally, my intention was to delete the records from a table based on the @targetMultiplex@ when the @outputParame... Dănuț Filimon
04:22 AM Database Feature #6816: improve PreselectQuery.assembleHQL
Update: I noticed that @SortCriterion.toString@ gets called quite often so I had a look in that function to see if so... Radu Apetrii

12/13/2022

06:48 PM Database Feature #6444: dataset improvements
Igor Skornyakov wrote:
> BTW: it looks that @FILL@ for recursive dataset can be very expensive since it can require ...
Ovidiu Maxiniuc
04:54 PM Base Language Bug #6993: OO: incorrect field names in DataTypeEnum.java
Greg Shah wrote:
> Vladimir: Please check your failing scenario in 6129b and let us know what you find.
Yes, in...
Vladimir Tsichevski
04:53 PM Base Language Bug #6993: OO: incorrect field names in DataTypeEnum.java
Constantin Asofiei wrote:
> Check your classpath. ConvertedClassName no longer exists in 6129b.
Yes, I forgot to ...
Vladimir Tsichevski
04:29 PM Base Language Bug #6993: OO: incorrect field names in DataTypeEnum.java
Check your classpath. ConvertedClassName no longer exists in 6129b. Constantin Asofiei
03:43 PM Base Language Bug #6993: OO: incorrect field names in DataTypeEnum.java
Greg Shah wrote:
> Vladimir: Please check your failing scenario in 6129b and let us know what you find.
I canno...
Vladimir Tsichevski
02:04 PM Base Language Bug #6993: OO: incorrect field names in DataTypeEnum.java
Our OO implementation is much more advanced in vranch 6129b than in 3821c. In 6129b, at this time we only use @Legac... Greg Shah
07:30 AM Base Language Bug #6993: OO: incorrect field names in DataTypeEnum.java
Vladimir Tsichevski wrote:
> No, it is the Java sources which will not compile.
> Note: the name if the field ref...
Marian Edu
07:24 AM Base Language Bug #6993: OO: incorrect field names in DataTypeEnum.java
Marian Edu wrote:
> All classes in @OpenEdge@ and @Progress@ packages were created *manually*, this is the expecte...
Vladimir Tsichevski
07:13 AM Base Language Bug #6993: OO: incorrect field names in DataTypeEnum.java
Vladimir Tsichevski wrote:
> The fields in @OpenEdge.Core.DataTypeEnum@ are named after the corresponding Progress b...
Marian Edu
06:59 AM Base Language Bug #6993 (Review): OO: incorrect field names in DataTypeEnum.java
Fixed in 3821c rev. 14438. Vladimir Tsichevski
06:45 AM Base Language Bug #6993 (WIP): OO: incorrect field names in DataTypeEnum.java
Vladimir Tsichevski
06:42 AM Base Language Bug #6993: OO: incorrect field names in DataTypeEnum.java
Please do fix this. Greg Shah
06:31 AM Base Language Bug #6993: OO: incorrect field names in DataTypeEnum.java
The fields in @OpenEdge.Core.DataTypeEnum@ are named after the corresponding Progress base data types, like @characte... Vladimir Tsichevski
06:24 AM Base Language Bug #6993 (Closed): OO: incorrect field names in DataTypeEnum.java
Vladimir Tsichevski
03:19 PM User Interface Feature #6996: WebGUI: Analyze the effect of willReadFrequently option on the 2D renderer perform...
According to this article https://html.spec.whatwg.org/multipage/canvas.html#concept-canvas-will-read-frequently @wil... Hynek Cihlar
03:13 PM User Interface Feature #6996 (New): WebGUI: Analyze the effect of willReadFrequently option on the 2D renderer p...
Hynek Cihlar
11:56 AM Database Feature #6995: possibly support NO-UNDO temporary tables directly in H2
I think @Session.log@ is responsible for logging the sub(tx) details needed for savepoints or rollback. This is enab... Constantin Asofiei
11:13 AM Database Feature #6995: possibly support NO-UNDO temporary tables directly in H2
I guess a simple first step is to profile typical flows in real applications and see if we can associate any bottlene... Eric Faulhaber
11:08 AM Database Feature #6995: possibly support NO-UNDO temporary tables directly in H2
NO-UNDO temp-tables are used heavily in many 4GL applications. Typically, regular temp-tables are used as well, such ... Eric Faulhaber
10:41 AM Database Feature #6995 (Closed): possibly support NO-UNDO temporary tables directly in H2
Eric Faulhaber
10:37 AM Database Feature #6582: implement multi-table AdaptiveQuery
Greg Shah wrote:
> > consider way stronger optimizations directly in the H2 engine: this involves some extended work...
Eric Faulhaber
09:10 AM User Interface Bug #6994: session:set-wait-state("general") must mimic UI responsiveness and UI mouse pointer be...
See testcase below.
# At @hBtnWaitstate@ of the (default-) window , the UI is irresponsive. At the @hBtnWaitstate@...
Tijs Wickardt
09:06 AM User Interface Bug #6994 (New): session:set-wait-state("general") must mimic UI responsiveness and UI mouse poin...
Tijs Wickardt
07:47 AM Database Feature #6928: H2 UPDATE performance improvement
Alexandru Lungu wrote:
> As a side question, I see some changes from for-each structure into index based iteration: ...
Constantin Asofiei
06:58 AM Database Feature #6928: H2 UPDATE performance improvement
I got deep in most of the changes in rev. 8 - they seem reasonable. As a side question, I see some changes from for-e... Alexandru Lungu

12/12/2022

04:34 PM Runtime Infrastructure Bug #5699 (Closed): broken logfile name on Windows appserver clients (and probably other cases on...
Greg Shah
01:28 PM Runtime Infrastructure Bug #5699: broken logfile name on Windows appserver clients (and probably other cases on Windows)
I ran the server on Windows with a batch process and was able to confirm the new behavior of the spawner of properly ... Galya B
02:29 PM Database Feature #6444: dataset improvements
Based on my tests the @FILL@ for recursive DATA-RELATION add records which are not in the DATA-SOURCE QUERY only if b... Igor Skornyakov
01:29 PM Runtime Infrastructure Feature #6939: improve proxy performance by hard-coding method invocation
Some additional notes:
* having both consumer and function lambdas doesn't really have a functional benefit, only fu...
Constantin Asofiei
10:32 AM Runtime Infrastructure Feature #6939: improve proxy performance by hard-coding method invocation
Eric, please review attached patch - it adds a invocation handler like this:... Constantin Asofiei
12:19 PM Database Feature #6928 (Review): H2 UPDATE performance improvement
The changes are in fwd-h2 project rev 8.
Alexandru: please review.
Constantin Asofiei
08:17 AM Database Support #6709: track nested FIND inside a related FOR loop
I've uncommitted 3821c rev 14436. It causes the following regression in conversion for a large customer application.... Greg Shah
04:29 AM Database Support #6709: track nested FIND inside a related FOR loop
Greg Shah wrote:
> You can just do this:
> ...
Dănuț Filimon
 

Also available in: Atom