Does anyone have experience of how JIRA performs for reading Active Object tables that have just a few columns? Say 500,000 rows and 6 columns, no foreign keys
I want to be able to query for all the rows that match on one field, returning probably less than 1000 matching rows
we have Email This Issue customers with having 600K-1M records in a table used to store email logs. The table has many columns as well.
Querying the table with ActiveObjects was never a problem, at least we never received a complaint about query performance and the data set I personally tried on PostgreSQL had approximately 650K records in this table and it was running fine on my laptop.
However, sometimes ActiveObjects execute ALTER TABLE statements. Two of our customers reported performance issues concerning ALTER table statements executed by ActiveObjects on this very huge table. Both of them used mySQL 5.1, so it looked to me that it was mySQL that could not complete the statements.
Again, this is ALTER TABEL not a SELECT. SELECT was always acceptable.
We had an Atlassian event (like an AUG) yesterday and there was a presentation about using Querydsl to query huge plugin tables with extremely good performance. So there is an easy and promising alternative to ActiveObjects when it comes to querying AO tables within an addon.
I think in general, AO itself is not likely to be a performance bottleneck. If you are frequently querying by a particular field, then it is good to make sure that the field is indexed, but that isn't something that is a database optimization and not unique to AO.
AO will do ALTER TABLE commands when you install a new version of a plugin and AO sees that the database metadata does not match the entity definitions. It is not something that it would do under normal conditions. This is due to installing a plugin on a live system which, while possible, is never going to be free of risk.
As Tibor mentions, internally Atlassian is converting our own plugins to use AO for schema management only and using atlassian-pocketknife-querydsl to write queries. I'd like to see us ship that as a bundle instead of a library at some point, but we've had enough success with QueryDSL at this point that I would definitely say it's worth investigating.
I have multiple projects that use variations of the same base workflow. The variations depend on the requirements of the project or issue type. The variations mostly come in the form of new statuses ...
Connect with like-minded Atlassian users at free events near you!Find a group
Connect with like-minded Atlassian users at free events near you!
Unfortunately there are no AUG chapters near you at the moment.Start an AUG
You're one step closer to meeting fellow Atlassian users at your local meet up. Learn more about AUGs