unload_library

The unload_library operator unloads a plugin

Synopsis

unload_library('library_name')

Summary

Unload a plug-in from the current SciDB instance. The unload_library operator provides the same functionality as the AQL UNLOAD LIBRARY 'library_name' statement.  Requires root permissions when running in namespaces mode.

 

The unload_library operation does not take effect until SciDB restart.

Example

  1. Ensure that the linear algebra library is loaded, so we can demonstrate unloading it later (Note that the lib prefix is not used in the load_ and unload_ commands though it appears in the name attribute of the list command):

    AFL% load_library('linear_algebra')
    AFL% filter(project(list('libraries'),name), name='liblinear_algebra.so')


    The output is of the following form:

    {inst,n} name
    {0,2} 'liblinear_algebra.so'
    {1,2} 'liblinear_algebra.so'
    {2,2} 'liblinear_algebra.so'
    {3,2} 'liblinear_algebra.so'

    There is one line of data for each instance "inst", and "n" depends on how many and which other libraries are loaded.

  2. Unload the linear algebra library on the next database restart:

    AFL% unload_library('linear_algebra')
  3. Re-start SciDB.  See Running SciDB.

  4. Verify that the library is no longer loaded:

    AFL% filter(project(list('libraries'),name), name='liblinear_algebra.so')


    The output is:

    {inst,n} name

    This validates that the library is no longer loaded.

Â