2014 Evergreen Hack-A-Way Review



Ben Shum, Bibliomation

Melissa Ceraso, Bibliomation

Yamil Suarez, Berklee College of Music

Rogan Hamby, York County Public Library

Mike Rylander, Equinox Software

Bill Erickson, King County Library System

Dan Pearl, C/W MARS

Dan Wells, Calvin College

Remington Steed, Calvin College

Jason Boyer, Indiana State Library

Chris Sharp, Georgia Public Library Service

Kathy Lussier, MassLNC (remotely)

Michele Morgan, NOBLE (remotely)

Jason Etheridge, Equinox Software (remotely)

Jeff Godin, Traverse Area District Library (remotely)




The third annual Evergreen Hack-A-Way ran from Wednesday, September 24 through Friday, September 26, 2014 at the Rock Hill Branch of the York County Public Library.  Topics discussed included the following:


  • Evergreen 2.7 release (Ben)

  • Evergreen next release (Ben)

    • Who will be the next release manager?

    • Goals/objectives for next release:

      • Improvements to search speed

      • Deprecation of more legacy code

        • JSPAC remnants

        • Legacy circulation scripts

      • Improvements to internationalization infrastructure

    • Features:

      • Web client

      • Metabib display fields

      • Metabib virtual records

  • Removal of autogen.sh dependency (Chris)

    • Currently, front-end changes to organizational units, such as changing OPAC visibility, adding/removing units, and other changes requires a backend script to run for changes to take effect.

    • Mike and Bill discussed a plan that would remove this requirement.

  • Improvements to Acquistions setup and administration (Chris and Bill)

    • Current structure depends on out-of-band Ruby code that is brittle and difficult to install, update, and run.

    • Bill is working on an Action/Trigger template that will create the EDI message directly, removing the need for the Ruby piece: https://bugs.launchpad.net/evergreen/+bug/1373690

  • Need for a “deleted” flag on Copy Locations (Jason B.)

  • Need for keyword searching capability for authorities management (Yamil)

    • Yamil and Mike worked on a branch to address this (no bug number known)

  • Need for streamlined websockets installation (Bill)

    • Web client requires complicated procedure to configure websockets.

  • Conditional negative balances (Dan Wells, others)

    • MassLNC funded development last year to create a payment type of “void” to replace the current billing structure: https://bugs.launchpad.net/evergreen/+bug/1198465

    • Objections to the assumptions made:

      • Is a void a “thing”?

    • Dan Wells created an improved billing interface that shows payment history in a timeline view - may remove the need for the void payment approach.

  • Bug found in PINES preventing shelf browse at consortium level. (Ben/Chris/Mike)

  • User merge slowness in PINES (Chris)

    • At Mike’s suggestion, Chris added debugging statements to the merge function to identify the source of the slowness.

    • Merge process was hanging when updating the “voider” field in the money.billing table

    • Chris added an index to money.billing to speed the process: https://bugs.launchpad.net/evergreen/+bug/1374551


Topics discussed at the outset, but not followed up:


  • Support for Ubuntu 14.04 (Ben and Chris)

    • Problem with current Evergreen code and libdbi, the main C library used to communicate between the application and the database: https://bugs.launchpad.net/evergreen/+bug/1366964

    • No coordinated action was taken during the Hack-a-Way, but there were suggestions to install an older version of the dependency in the meantime.

  • Need for better security within the Apache layer (Mike)

    • Currently there is not a clean enough division between the “public” and “private” services.

  • Authentication password storage in the database. (Bill)

    • Our current method of password storage needs review.


Direct Benefits to the PINES Program

Three PINES-specific topics of discussion were added to the Hack-A-Way wiki page (http://wiki.evergreen-ils.org/doku.php?id=hack-a-way-2014) in advance of the event (autogen.sh, Ubuntu 14.04 issues, and Acquisitions setup), and two other PINES issues (shelf browse timeout, user merge slowness) emerged for discussion during the conference.  Of those, two issues were resolved (shelf browse timeout, user merge slowness) and two others have already seen significant planning (Acquisitions EDI setup and autogen.sh replacement).  The user merge slowness issue resolution allowed us to process 47,000 patrons in under seven hours rather than over the many weeks, possibly months, we were anticipating.


This event has continued to demonstrate the enormous benefits to GPLS and the PINES Libraries of remaining deeply involved with the Evergreen ILS development community.