Missing data after upgrading to v20

CTG2020

Bronze Partner
Basic Certified
Joined
Feb 13, 2020
Messages
30
Reaction score
4
We recently updated our 3CX system to v20 on June 29th. Since the upgrade, we've noticed that some historical data appears to be missing when attempting to generate specific reports.

We're trying to gather User Activity data over the past six months and display it in an hour-by-hour format. To do this, we navigate to: Admin > Reports > Extension Statistics: User Activity. We then apply the following filters:
  • Range: Last Month or a custom time frame from earlier this year
  • Time Scale: Hour-By-Hour
  • Select Users: Any
  • Call Direction: All

When the report is generated, we can see valid data for June 29th and 30th (the days after the update), showing expected numbers of answered and unanswered calls.

However, any date prior to June 29th shows 0 for both answered and unanswered calls, even though we are certain calls were made during that time. This suggests that historical data is not being pulled correctly since the v20 update.

Interestingly, when using other reporting sections (such as general Extension Statistics), we can still see data from before the update. So it seems that the data exists somewhere, but isn't accessible through this particular reporting section.

Has anyone else experienced this issue following the update to v20? Any idea what might have caused it—or if there's a way to recover or access the missing data?

Thanks in advance!
 
  • Like
Reactions: Alejandro_3CX
As a little additional background, 3CX no longer saves data in the v20 U5 (and earlier) tables that start with the name "cl_" and now save the data to new U6 specific tables.

In the upgrade process old pre-upgrade data is not migrated to the new tables. The data in the new tables only contain transactions that occur after the upgrade. This means some historical information saved in the old tables is not accessible to the new reports.

Assuming you have not truncated your 3CX history, the old data is still there in the original tables, If you need access to that historical data, you can use our 3CX Exporter tool to replicate the data (old and new) to a separate Microsoft SQL Server, MySQL or MariaDB server, and then you can create custom reports that utilize the data.

1752096196882.png

Honestly, I'm no longer the lead on our Exporter tool (not for more than a decade), so I do not know if it would be feasible to convert the old data to the new table structure. I assume if it was straightforward, 3CX would have done it automatically during the upgrade process. That's what they did years ago when they retired the "calldetails" and "callhistory3" tables (see above) back around the v12 era.

Like everyone else (including 3CX and VoIPTools), we are all running as fast as we can to keep up with the changing technologies and this may be one of the priorities that did not make the cut for this version of 3CX. Maybe as the dust settles on the U6 upgrade we can look at the feasibility of migrating the old data to the new structure, but even if we can, we cannot put the old data back in the new tables.

3CX does not permit anyone (including VoIPTools) to access or change the PostgreSQL data directly. The best we might be able to do is convert the original data to the new structure and save the restructured data in SQL Server (or other database) and combine (replicate) the new data with the old.

The old data is not going to be assessable directly in 3CX for new reports unless 3CX decides to offer their own conversion tool . This is because only 3CX is allowed to touch their database data.