Bucket grid configuration updates do not save

Bug #1805895 reported by Anna Goben
90
This bug affects 19 people
Affects Status Importance Assigned to Milestone
Evergreen
Fix Released
Medium
Unassigned
3.1
Fix Released
Medium
Unassigned
3.2
Fix Released
Medium
Unassigned

Bug Description

Bucket views are all reverting to default grid configurations and are refusing to save any changes. This seems to be affecting all three types of buckets.

Examples:

-Record buckets: Remove the Record ID column. Save. Refresh. Record ID returns.
-Item buckets: Add Copy Status column. Save. Refresh. Copy Status disappears.
-User buckets: Add Preferred First Name column. Save. Refresh. Preferred First Name disappears.

Am attaching a screencast.

Evergreen 3.2.1

Revision history for this message
Anna Goben (agoben) wrote :
summary: - Bucket grid updates do not save
+ Bucket grid configuration updates do not save
tags: added: webstaffcolumns
Revision history for this message
Remington Steed (rjs7) wrote :

These grids appear to have correct persist-key settings, and they are included in the new server-side database settings. So perhaps there's a bug in the bucket apps somewhere.

Changed in evergreen:
status: New → Confirmed
tags: added: cataloging webstaffclient
Changed in evergreen:
importance: Undecided → Medium
Revision history for this message
Terran McCanna (tmccanna) wrote :

Update: In 3.2.2 we are seeing this problem with Record Buckets, but User Buckets and Item Buckets appear to be working fine.

Revision history for this message
Elaine Hardy (ehardy) wrote :

At PINES, we are only seeing this behavior in record buckets. Item and user buckets are saving column changes

Revision history for this message
Geoff Sams (gsams) wrote :

In 3.2.3 we are seeing the issue in Record,Item, and User buckets alike.

Revision history for this message
Chrisy Schroth (cschroth) wrote :

We are on 3.2.3 and I am also finding the same issue in Item, Record and User buckets. As a cataloger I don't use User buckets, but I opened one, added fields, saved, refreshed, and it changed. I used reset columns, because I didn't remember exactly what they were before, and got a very different configuration (with lots of duplication of fields). I saved THAT configuration, refreshed again, and it went to the original set of columns. Could this have been set by our System Admin and that is why it sticks in that configuration and the user can't change it permanently?

Revision history for this message
Terran McCanna (tmccanna) wrote :

Hmm, we're on 3.2.3 now and not seeing the problem with Item or User buckets, just Record buckets. (Not sure if we've applied a different patch from a different ticket that has fixed these?)

Geoff and Chrisy - are either of you by chance using Hatch? We've seen a lot of problems with old lingering Hatch stored preferences conflicting with the new server-side stored preferences. If that could be the case, be sure to disable the "Store Local Settings in Hatch" option on the workstation.

Andrea Neiman (aneiman)
tags: added: ws-settings
Revision history for this message
Anna Goben (agoben) wrote :

We're still seeing this consistently in Indiana, and we've always told staff to not use the local storage settings in Hatch, so probably not Hatch at fault.

Revision history for this message
John Amundson (jamundson) wrote :

I haven't tested Record or User buckets, but this is definitely affecting Item Buckets for me, (Evergreen 3.2.4). And no Hatch.

I'm finding that there are some columns I can add that will save and display correctly - like Copy ID - but most of the columns do not work. As soon as I refresh the page or access it in another way, the added column will fail to display.

What is interesting is if I look at the setting file, (Administration>Workstation>Stored Preferences>Server Workstation Prefs>eg.grid.cat.bucket.copy.view), the columns I added will be listed, but they'll fail to display when I access the bucket interface. They'll continue to be listed in the setting file until I make another change to the bucket settings, (i.e. add another column, adjust row count, etc)

As an example, I added Copy Status and Circulation Modifier, and even though the interface didn't display the columns, the setting file contained the following:

{
  "limit": 50,
  "version": 2,
  "columns": [
    {
      "name": "barcode"
    },
    {
      "name": "call_number.label"
    },
    {
      "name": "location.name"
    },
    {
      "name": "call_number.record.simple_record.title"
    },
    {
      "name": "circ_modifier"
    },
    {
      "name": "status"
    }
  ]
}

Revision history for this message
Millissa (millissam) wrote :

We are on 3.2.5. We are unable to save column configurations in the record buckets. It seems to stick with Item Status and User buckets. We are not using Hatch.

Revision history for this message
Dan Briem (dbriem) wrote :

(3.2.6) This looks like a saved column validation issue for eg-grids with the auto-fields attribute. Bucket grids load columns from an IDL class in addition to a default column config. But, at the point when saved columns are checked that they match a column on the grid, only the default columns have loaded, so any saved IDL columns are ignored as invalid.

For example, on User Buckets, "User ID" is a default column, so when it's saved it sticks. But, if "Is Deleted" is saved, it doesn't stick because the columns from the ILS User IDL class don't load until after the promise resolves that handles the saved columns.

This patch to grid.js adds a call to $scope.handleAutoFields() in the egCore.hatch.getItem callback. This still gives time for the transcluded eg-grid-fields to load (no collisions) and loads the columns from the IDL class before the saved config is whitelisted. The original call in the eg-grid link function stays to handle the case where there's no persist-key or saved config. Note: it does call twice if there's a saved config, but it only runs if $scope.autoFields is set and it deletes that property after it runs the first time.

https://git.evergreen-ils.org/?p=working/Evergreen.git;a=shortlog;h=refs/heads/user/dbriem/lp1805895_bucket_grids_dont_save

tags: added: pullrequest
Changed in evergreen:
assignee: nobody → Jane Sandberg (sandbej)
Revision history for this message
Galen Charlton (gmc) wrote :

Patch does the thing. Signoff branch is user/gmcharlt/lp1805895_signoff.

Changed in evergreen:
assignee: Jane Sandberg (sandbej) → Galen Charlton (gmc)
tags: added: signedoff
Galen Charlton (gmc)
Changed in evergreen:
milestone: none → 3.3.3
assignee: Galen Charlton (gmc) → nobody
Jason Boyer (jboyer)
Changed in evergreen:
assignee: nobody → Jason Boyer (jboyer)
Jason Boyer (jboyer)
Changed in evergreen:
assignee: Jason Boyer (jboyer) → nobody
Revision history for this message
Jason Boyer (jboyer) wrote :

One more signoff from me and now it's pushed to everything between rel_3_1 and master.

Thanks Dan and Galen!

Jason Boyer (jboyer)
Changed in evergreen:
status: Confirmed → Fix Committed
Revision history for this message
Galen Charlton (gmc) wrote :

Also, congratulations on having your first patch accepted into Evergreen, Dan!

Changed in evergreen:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.