Things I wish I’d known
About Polaris 8 years ago
Presented by: Wes Osborn
Central Library Consortium
Overview
Background
Configuration
Regular Tasks
Troubleshooting
Rants
Background
Background
14 Member Consortium
Public Libraries
Formerly Dynix/Horizon
26 million annual circulation
Configuration
Configuration
Shelf locations vs Collection Codes
3M SIP Setup
Email Accounts
Remote PAC Profile
Acquisitions item creation (970)
PAC e-sources
Shelf locations versus
Collection Codes
Shelf locations
Are a pseudo shared table
Duplicate numeric IDs are allowed (between branches)
No way to “sync” up numbers across branches
Are difficult to use in reporting
Do show nicely in the PAC
Might work if you are a single library branch
Shelf location - Oddities
Same “number” - Different code
Same “code” - Different number
Shelf location - Item Record Confusion
Collection Codes
Use a “real” database table format
The ID is unique within the table
Are a shared code
Can still be turned on/off individually
Unique abbreviation in addition to the unique ID
Collection Codes - Sys Admin View
Collection Codes - SQL View
CLC’s Rule(s) of thumb(s)
Sign at the library = Collection Code
Permanent home = Collection Code
Vacation home (display, quick picks, etc.) = Shelf location
Collection Codes + A few Shelf Locations = Magic
3M SIP Setup
Default Staff Member and Workstation make troubleshooting difficult
Did this come from the PAC or a 3M SIP client?
This action clearly happened via a 3M SIP Client
3M SIP Assigned Staff + Workstation Guidelines
Bonus 3M SIP Tip on log filtering
When attempting to troubleshoot using Polaris SIP Server logs, use OpenRefine and apply this custom filter:
http://go.clcohio.org/�openrefine3msip
Email Accounts
Any email address in Polaris should be “generic”
You will forget to change the address when a staff member leaves
It will take you several attempts to even remember where the email address setting is located
Make this the email admins “problem”
Two types of email addresses in Polaris
Email address is “extracted” from the associated staff account
Email address is input into the SA field/setting
Extracted: Profile -> PAC -> Patron Access Options
Extracted: Email - Account
Email Address used as input
Organization email address & Error Reporting address
Notification email address (sender/reply to/report)
Collection Agency To/From Address
PAC Profile Email of Sender
From address for title list emails. Also used for online payment receipts, telephony service error and warning messages, and the EDI e-mail log.
Email Address used as input
Saved Search From Address
ACQ Claims Email Address
ACQ EDI Invoice Default Email Address
Credit card reporting email (staff/ExpressCheck/PAC/MobilePAC)
Organization and Org Error reporting email
Tips for good generic email addresses
Don’t combine
Use a different email address for each setting
Email admin can “combine” on the server
Be descriptive
credit-receipt-mobilepac@librarydomain.org
Finding SA email settings on your own
select * from Polaris.polaris.AdminAttributes where AttrID in
(select AttrID from polaris.polaris.Organizationspppp where Value like '%@%' or Mnemonic like '%email%' or Mnemonic like '%addr%')
Remote PAC Profile
What is the PAC for?
Inside the library
Locating material on the shelf
Placing holds
Outside the library (home)
Placing holds (primarily)
Locating material on the shelf (occasionally)
New exposure in 5.2 PowerPAC
But what if you want your branches altogether?
But making all branches local also impacts title bolding and Local Availability counts
Create a remote PAC profile
Use this profile on the library website
Remote profile would mark all library system branches as local so they would be available at the top
The title bolding could be disabled
The local availability item count could be disabled on the results page
Instead use the new Availability dashboard filter
Acquisitions Item Record Creation
Creating item records from EDI bibs/orders w/970
Method 1
Use $c (collection code), $m (material type) and try to find a matching on-order item template. If there is more than one just grab the first one.
Method 2
Use the $h (item template name) and match on the first 10 characters of the template name
Advantages of Method 1 - $c + $m
You enjoy uncertainty
If you have more than one possible match, you’ll have to go through all the templates to find it
You like extra work
Such as talking with vendors when you change collection or material type codes
You have more than 36^10 unique on-order templates
Advantages of Method 2 - $h
Easy to spot duplicates
Just sort item templates by name
Easy to make changes
Change the codes being used within the template
Recommendation
Don’t tie $h names too closely to underlying collection code or material type codes
PAC e-sources
Sys Admin Tasks
Regular Sys Admin Tasks
SQL Safety
Permissions
Settings inheritance
Dangers of deleting
Monitoring your environment
SQL Safety
SQL Safety - Use transactions
SQL Transactions are the closest thing you have to an undo
Beware they can lock the table until committed or rolled back
Always best to double commit/rollback
Using SQL Transactions
Begin tran = Starts the transaction process�Rollback = Undoes the work within transaction�Commit = “Saves” the work within the transaction
SQL Transactions - The double commit/rollback
SQL Transactions - Open Transactions
SQL Transactions - Rollbacks
SQL Safety - Use indexed columns
Some date columns in the PolarisTransactions database are NOT indexed
This means VERY long wait times when using the columns in WHERE transactions
Example: TranClientDate (indexed) in TransactionHeaders TransactionDate (NOT indexed)
Occasionally built-in reports use the “wrong” one
Permissions
Permissions
Finding who has what permissions
The importance of groups
Finding multiple staff members using power search
Permission Groups make life easier
Means Acquire Permission Groups will actually work
Makes Viewing Permission Assignments in SA tolerable
Even for one permission; make a group
Finding who can do what - The hard way
Finding who can do what - The easy way
Admin Explorer -> Security Section
Admin Explorer -> Security
Review under System / Library / Branch
Each section will only show relevant permissions
Ex: Patron Registration (Access) will only show at branch
Quickly Add/Remove Groups to a particular permission
Recommend Limiting:
Deny Hold and Modify Postal Codes table
Make sure only groups are listed for permissions
Adding multiple staff members at once
Power Search ~ STMN={user1,user2,user3}
SA Settings Inheritance
The Glory Days of Polaris SA settings
Bask in the richness
New Complexities
But inheritance still happens…
But inheritance still happens…
Until it doesn’t (make a change at BRANCH level)
Until it doesn’t (make a change at LIBRARY level)
Branch remains unchanged - Inheritance is broken
Golden Rule: Always make change at library level, but check branch level too.
What happened?
Changing the setting at the branch level, added an entry into the Organization's Parameters, Profiles, Permissions, and Preferences table. Polaris starts by looking for matching branch entries and then works its way “up the chain”, stopping as soon as it finds a match..
“Reset” Inheritance by removing branch entry
Carefully target the OrganizationsPPPP change by indicating the organizationid, attrid and the value columns.
Hooray! Inheritance has returned!
Dangers of deleting
CKO transaction - SubType 61 = Collection Code
Collection Code #7 = Juvenile Fiction
Then all you have is a number - no description
If description won’t be preserved, then archive
Monitoring your Polaris Environment
Monitoring
Do you know when you server is about to run out of disk space?
If a SQL job didn’t run properly?
If your SIP server isn’t responding properly on port 5001?
If you PAC isn’t returning responses to keyword searches?
If you have something with a circ status of out, but it isn’t actually checked out to a patron?
PRTG Can monitor all these things for you
Not the only solution, but free for 100 sensors
Enough to monitor your DB server
See my 2016 IUG presentation for more details
http://go.clcohio.org/iugprtg
Staff Tasks
Regular Staff Tasks
Using SSRS WebUI
Finding things via the control number
Hiding “bad” things (lost and can’t be reordered)
Using SSRS WebUI
SQL Server Reporting Services (SSRS)
The engine behind Utilities -> Reports & Notices
The WebUI is easy and simply to use (even for staff!)
Search for Reports
Download in multiple formats - without rerunning!
Subscribe to Reports
Alternative to Utilities -> Reports & Notices for Leap users
SSRS Staff Instructions
Additional SSRS Information
Handout for staff
http://go.clcohio.org/ssrsforstaff
CLC Report Definitions
https://reportdefs.clcohio.org
More information on SSRS for admins
http://go.clcohio.org/ssrsforadmins
Finding things via the Control Number
So you or someone in your org does a lot of SQL
But some things are easier to troubleshoot in the client
So you copy your GroupID from the results and then...
No place to put the ID
And the names aren’t always the same
Use the SQL Search - Select IDNumber - Method
Hiding “bad” things
What needs hiding (in the PAC)?
Long overdue but not lost
Due to notification settings
High number holds but unpurchasable
Why doesn’t it age to lost?
Use this SQL Query in Find Tool, then uncheck the Display in PAC via bulk change
select ic.ItemRecordID
from Polaris.Polaris.ItemCheckouts (nolock) ic
join Polaris.Polaris.CircItemRecords (nolock) cir on
cir.ItemRecordID = ic.ItemRecordID
where ic.DueDate < DATEADD(year, -1, GETDATE()) and cir.ItemStatusID = 2
Unpurchasable bibs/titles
Popularity ranking - A vicious cycle
Popular = Number of hold requests, num CKOs, lifetime circ
Find and make not displayable in PAC
Use this Bib Find Tool SQL
http://go.clcohio.org/unbuyablebibs
Adjust number of holds based on local volume
CLC is set at 50
Now others can rise to the top (58 copies available!)
Troubleshooting�IT Edition
Troubleshooting - IT Edition
Are you using Kerberos?
Are you having system slowdowns?
Checking Kerberos Configuration
Kerberos vs NTLM
Kerberos = Newer (since Windows 2000)
Kerberos = Faster logins - the use of tickets means re-authentications can happen as along at the ticket is valid
NTLM = Supports pre-Windows 2000 systems
Despite the fact the Kerberos is a faster, safer and more mature platform, it is often still not being used in many Polaris environments.
How to check authentication method
Log into a Polaris application server and check the Security Event Log.
Under authentication information, check the Logon Process. Kerberos = Good; NTLM = bad
Setting up Kerberos
Make sure DNS is working and healthy
Configure Service Principal Names (SPNs)
http://go.clcohio.org/msspn
SPNs need updated during each upgrade
If you’re in a multi-domain environment, setup Kerberos Forest Search Order
http://go.clcohio.org/kfso
What to do about system slowdowns
Use a systematic approach
Don’t start at top, may not be ID 10 T problem
Example - The “weekend” problem
Slowdowns every weekend for two months
Monitoring service wasn’t showing any errors
Transactions were low on the weekend
Less people were using the system
WHY is it slower!
A hardware issue!
Use our troubleshooting guide
http://go.clcohio.org/polarisperformance
Eight major troubleshooting areas
From network performance to SQL Resource Waits
Feel free to add comments to make the resource even better
Rants
Rants
Bookmobile stats
Authority Control
Bib Merging
Collection Code Groups
Bulk Change Tool (consortium)
Bookmobile Stats
There is no reasonable way to do per stop stats
Enhancement:
160930791731443
Authority Control
Polaris is built to work withOUT Authority Control
Authorities end up being a 2nd class citizen
Over 70 authority related enhancement requests
“Is there a setting that could/would include the content of see and see also references in keyword and exact searching in both the pac and the staff client?”
“Polaris does not take free floating subdivisions into account when reporting blind references.”
Bib Merging
Need to clean up some bibs using MarcEdit
Wait… what!
There is no 001 = 001 duplication detection rule!
Enhancement #161229257028476
Collection Code Groups
We love our 577 Collection Codes, but….
Collection code groups/hierarchy
Like grouping of material types
Allow grouping of collection codes
For reporting AND searching/filtering
Enhancement #160930830658537
Thanks!
Wes Osborn (wosborn@clcohio.org)
Troubleshooting - Holds Edition
Troubleshooting - Holds Edition
Hold status vs Item circ. status
Earmarked Items
RTF cycle length bug
Hold status versus
Item Circ Status
Item Records Have Status but So Do Hold Records
Items:
In
Out
Held
Lost/Withdrawn/Missing
Holds:
Active
Pending
Held
Unclaimed
Unclaimed but still Held - Confusing but true
Earmarked items
What is earmarking an item?
CLC term for any item that has been selected by RTF process to fill a hold (hold status = Pending)
You can tell an item has been earmarked by using the Links menu in the item record
If it has a Pending For option, then it has been earmarked
These no longer follow Queue Preference settings
Use “Fill Now” option to override
Finding an earmarked item record
RTF Cycle length not properly calculated
RTF Cycle Length Bug
Today the RTF process counts days when the hold is inactive against the total number of days it is allowed to be in the RTF cycle. This is a bug (#484892), no ETA on when it will be fixed.
Extend your RTF cycle length to 999 days as a workaround.
Bulk Change Tool
Can’t we have them all default to (None)
Even required fields should be deliberate choices
Enhancement #160930767240410