Changeset 7598
- Timestamp:
- Feb 22, 2019, 9:51:39 AM (5 years ago)
- Location:
- trunk/doc/src
- Files:
-
- 11 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/doc/src/docbook/admin/installation.xml
r7548 r7598 51 51 This section list some important information that may or may not 52 52 apply when upgrading from the <emphasis>previous</emphasis> BASE 53 release to the current release (eg. 3.1 3 to 3.14). If you are54 upgrading from a BASE installation that is older (3.0-3.1 2)53 release to the current release (eg. 3.14 to 3.15). If you are 54 upgrading from a BASE installation that is older (3.0-3.13) 55 55 you should also read <xref linkend="appendix.update_warnings" />. 56 56 </para> 57 58 <bridgehead> The db.driver setting is no longer used</bridgehead>57 58 <bridgehead>Secondary storage support has been removed</bridgehead> 59 59 <para> 60 The JDBC driver to use is now found automatically based on 61 the <constant>db.url</constant> setting in the <filename>base.config</filename> 62 file. The <constant>db.driver</constant> setting can be removed. 63 </para> 64 65 <bridgehead>The (very) old Authenticator API has been removed</bridgehead> 66 <para> 67 The <code>net.sf.basedb.core.authentication.Authenticator</code> 68 interface and other related code that was deprecated in BASE 3.3 69 has been removed. Systems that still use old authentication code 70 need to replace this with a newer version before updating. 71 </para> 72 73 <bridgehead>Changes to the authentication system</bridgehead> 74 <para> 75 The authentication system has been updated to make it easier to 76 install more than one external authentication manager. The changes 77 are backwards compatible and existing authentication managers should 78 still work as before as long as they are the only ones installed. 79 However, the existing authentication managers will probably not work 80 well if more than one is installed since they lack some features that 81 are neccessary in order to cooperate with other managers. Before installing 82 more than one authentication manager it is recommended that they are 83 updated to newer versions. 84 </para> 85 86 <para> 87 Newer authentication managers typically no longer provide support for 88 password authentication. If the intention is that some users still should be 89 able to login with username+password, it is recommended that the 90 <guilabel>Password login form</guilabel> is enabled. Go to 91 <menuchoice> 92 <guimenu>Administrate</guimenu> 93 <guisubmenu>Plug-ins & extensions</guisubmenu> 94 <guimenuitem>Overview</guimenuitem> 95 </menuchoice> and locate the <guilabel>Login form customization</guilabel> 96 extension point to find it. 97 </para> 98 99 <bridgehead>Java 11</bridgehead> 100 <para> 101 Java 8 is still the only officially supported version, but our intention 102 is to switch to Java 11 (or later) some time in the near future (2019). 103 We have made some initial tests with Java 11 and believe that BASE should 104 work. However, it requires an extra installation step: 105 </para> 106 <para> 107 Copy the JAR-files located in <filename><base-dir>/misc/java11/</filename> 108 to the <filename><base-dir>/www/WEB-INF/lib/</filename> directory. 109 If you are running a BASE server today it might be a good idea to 110 be prepared by setting up a test environment that is running a clone of 111 the main server under Java 11. 112 </para> 113 114 <bridgehead>Secondary storage</bridgehead> 115 <para> 116 The <guilabel>Secondary storage</guilabel> feature has been deprecated 117 and will be removed in a future release. The recommendation is to replace 118 this feature with an external files solution instead. 60 The <guilabel>Secondary storage</guilabel> feature has been removed. 61 Files that are located in the secondary storage will be marked as offline 62 by the upgrade script. The recommendation is to replace this feature with 63 an external files solution instead. 119 64 </para> 120 65 -
trunk/doc/src/docbook/appendix/base.config.xml
r7548 r7598 440 440 </simplesect> 441 441 442 <simplesect id="appendix.base.config.secondary">443 <title>Secondary storage controller</title>444 445 <note>446 This feature has been deprecated in BASE 3.14 and will be removed in a447 future release. The recommendation is to replace this with an448 external files solution instead.449 </note>450 451 <para>452 This section contains settings for the secondary storage controller. See453 <xref linkend="plugin_developer.other.secondary"/> for more454 information about secondary storage.455 </para>456 457 <variablelist>458 <varlistentry>459 <term><property>secondary.storage.driver</property></term>460 <listitem>461 <para>462 The class name of the plug-in that acts as the secondary storage controller.463 BASE ships with a simple plug-in that just moves files to another directory,464 but it is not enabled by default. The class name of that plug-in is465 <classname docapi="net.sf.basedb.core">net.sf.basedb.core.InternalStorageController</classname>.466 If no class is specified the secondary storage feature is disabled.467 </para>468 </listitem>469 </varlistentry>470 471 <varlistentry>472 <term><property>secondary.storage.init</property></term>473 <listitem>474 <para>475 Initialisation parameters sent to the plug-in when calling the476 <methodname>init()</methodname> method. The syntax and meaning of this477 string depends on the plug-in. For the internal controller this is simply478 the path to the secondary directory.479 </para>480 </listitem>481 </varlistentry>482 483 <varlistentry>484 <term><property>secondary.storage.interval</property></term>485 <listitem>486 <para>487 Interval in seconds between each execution of the secondary storage488 controller plug-in. If this property is not specified, <property>secondary.storage.time</property>489 should be set, or the secondary storage feature will be disabled.490 </para>491 </listitem>492 </varlistentry>493 494 <varlistentry>495 <term><property>secondary.storage.time</property></term>496 <listitem>497 <para>498 Time-point values specifying the time(s) of day that the secondary storage controller499 should be executed. If present, this setting overrides the500 <property>secondary.storage.interval</property> setting.501 Time-point values are given as comma-separated list of two-digit, 24-based hour502 and two-digit minute values. For example: <userinput>03:10,09:00,23:59</userinput>.503 </para>504 </listitem>505 </varlistentry>506 </variablelist>507 508 </simplesect>509 442 510 443 <simplesect id="appendix.base.config.log"> … … 704 637 <para> 705 638 The path to the directory where uploaded and generated files should 706 be stored. This is the primary file storage. See <xref linkend="appendix.base.config.secondary" /> 707 for information about how to configure the secondary storage. Files are not 639 be stored. This is the primary file storage. Files are not 708 640 stored in the same directory structure or with the same names as in 709 641 the BASE file system. The internal structure may contain sub-directories. -
trunk/doc/src/docbook/appendix/incompatible.xml
r7545 r7598 35 35 and backwards compatible. 36 36 </para> 37 38 <sect1 id="appendix.incompatible.3.15"> 39 <title>BASE 3.15 release</title> 40 41 <bridgehead id="appendix.incompatible.secondarystorage">Secondary storage support has been removed</bridgehead> 42 <para> 43 API that is related to the secondary storage feature has been removed. For example, 44 In the <classname docapi="net.sf.basedb.core">File</classname> class, <code>getAction()/setAction()</code> 45 has been removed. In the <classname docapi="net.sf.basedb.core">Location</classname> enumeration, 46 <code>SECONDARY</code> has been removed. 47 </para> 48 </sect1> 37 49 38 50 <sect1 id="appendix.incompatible.3.14"> -
trunk/doc/src/docbook/appendix/update_warnings.xml
r7545 r7598 35 35 to the current version. 36 36 </para> 37 38 <sect1 id="appendix.update_warnings.3.15"> 39 <title>BASE 3.15</title> 40 41 <bridgehead>Secondary storage support has been removed</bridgehead> 42 <para> 43 The <guilabel>Secondary storage</guilabel> feature has been removed. 44 Files that are located in the secondary storage will be marked as offline 45 by the upgrade script. The recommendation is to replace this feature with 46 an external files solution instead. 47 </para> 48 49 50 </sect1> 37 51 38 52 <sect1 id="appendix.update_warnings.3.14"> -
trunk/doc/src/docbook/developer/base_api.xml
r6468 r7598 820 820 quota values for different types of quota types and locations. 821 821 BASE defines several quota types (file, raw data and experiment), 822 and locations (primary, secondaryand offline).822 and locations (primary, external and offline). 823 823 </para> 824 824 … … 1078 1078 <listitem> 1079 1079 <para> 1080 2 = The file is in secondary storage, ie. it has been moved to some1081 other place and can't be used by BASE immediately.1082 </para>1083 </listitem>1084 <listitem>1085 <para>1086 1080 3 = The file is an external file whose location is referenced by the 1087 1081 <varname>url</varname> property. If the file is protected by passwords … … 1094 1088 </listitem> 1095 1089 </itemizedlist> 1096 1097 <para> 1098 The <varname>action</varname> property controls how a file is 1099 moved between primary and seconday storage. It can have the following 1100 values: 1101 </para> 1102 1103 <itemizedlist> 1104 <listitem> 1105 <para> 1106 0 = Do nothing 1107 </para> 1108 </listitem> 1109 <listitem> 1110 <para> 1111 1 = If the file is in secondary storage, move it back to the primary storage 1112 </para> 1113 </listitem> 1114 <listitem> 1115 <para> 1116 2 = If the file is in primary storage, move it to the secondary storage 1117 </para> 1118 </listitem> 1119 </itemizedlist> 1120 1121 <para> 1122 The actual moving between primary and secondary storage is done by an 1123 external program. See 1124 <xref linkend="appendix.base.config.secondary" /> and 1125 <xref linkend="plugin_developer.other.secondary" /> for more information. 1126 </para> 1127 1090 1128 1091 <para> 1129 1092 The <varname>md5</varname> property can be used to check for file 1130 corruption when it is moved between primary and secondary storage or 1131 when a user re-uploads a file that has been offline. 1093 corruption when a user re-uploads a file that has been offline. 1132 1094 </para> 1133 1095 -
trunk/doc/src/docbook/developer/plugins.xml
r7549 r7598 3465 3465 <?dbhtml filename="other.html" ?> 3466 3466 <title>Other plug-ins</title> 3467 3468 <sect2 id="plugin_developer.other.secondary">3469 <title>Secondary file storage plugins</title>3470 3471 <note>3472 This feature has been deprecated in BASE 3.14 and will be removed in a3473 future release. The recommendation is to replace this with an3474 external files solution instead. See <xref linkend="extensions_developer.connection_manager" />3475 for more information.3476 </note>3477 3478 <sect3 id="plugin_developer.other.secondary.vsprimary">3479 <title>Primary vs. secondary storage</title>3480 <para>3481 BASE has support for storing files in two locations, the primary storage and3482 the secondary storage. The primary storage is always disk-based and must be3483 accessible by the BASE server as a path on the file system. The path to the3484 primary storage is configured by the <varname>userfiles</varname> setting in the3485 <filename>base.config</filename> file. The primary storage is internal to3486 the core. Client applications don't get access to read or manipulate the3487 files directly from the file system.3488 </para>3489 3490 <para>3491 The secondary storage can be anything that can store files. It could, for3492 example, be another directory, a remote FTP server, or a tape based archiving3493 system. A file located in the secondary storage is not accessible by the3494 core, client applications or plug-ins. The secondary storage can only be accessed3495 by the secondary storage controller. The core (and client) applications uses3496 flags on the file items to handle the interaction with the secondary storage.3497 </para>3498 3499 <para>3500 Each file has an <property>action</property> attribute which default's to3501 <constant>File.Action.NOTHING</constant>. It can take two other values:3502 </para>3503 3504 <orderedlist>3505 <listitem>3506 <para>3507 <constant>File.Action.MOVE_TO_SECONDARY</constant>3508 </para>3509 </listitem>3510 <listitem>3511 <para>3512 <constant>File.Action.MOVE_TO_PRIMARY</constant>3513 </para>3514 </listitem>3515 </orderedlist>3516 3517 <para>3518 All files with the action attribute set to <constant>MOVE_TO_SECONDARY</constant>3519 should be moved to the secondary storage by the controller, and all files3520 with the action attribute set to <constant>MOVE_TO_PRIMARY</constant> should be3521 brought back to primary storage.3522 </para>3523 3524 <para>3525 The moving of files between primary and secondary storage doesn't happen3526 immediately. It is up to the server administrator to configure how often and3527 at what times the controller should check for files that should be moved.3528 This is configured by the <varname>secondary.storage.interval</varname>3529 and <varname>secondary.storage.time</varname> settings in the3530 <filename>base.config</filename> file.3531 </para>3532 </sect3>3533 3534 <sect3 id="plugin_developer.other.secondary.interface">3535 <title>The SecondaryStorageController interface</title>3536 3537 <para>3538 All you have to do to create a secondary storage controller is to3539 create a class that implements the3540 <interfacename docapi="net.sf.basedb.core">net.sf.basedb.core.SecondaryStorageController</interfacename>3541 interface. In your <filename>base.config</filename> file you then specify the3542 class name in the <varname>secondary.storage.driver</varname> setting and its3543 initialisation parameters in the <varname>secondary.storage.init</varname> setting.3544 </para>3545 3546 <para>3547 Your class must have a public no-argument constructor.3548 The BASE application will create only one instance of the class for3549 lifetime of the BASE server. Here are the methods that you must implement:3550 </para>3551 3552 <variablelist>3553 <varlistentry>3554 <term>3555 <methodsynopsis language="java">3556 <modifier>public</modifier>3557 <void />3558 <methodname>init</methodname>3559 <methodparam>3560 <type>String</type>3561 <parameter>settings</parameter>3562 </methodparam>3563 </methodsynopsis>3564 </term>3565 <listitem>3566 <para>3567 This method is called just after the object has been created with its argument3568 taken from the <varname>secondary.storage.init</varname> setting in your3569 <filename>base.config</filename> file. This method is only called once for3570 an object.3571 </para>3572 </listitem>3573 </varlistentry>3574 <varlistentry>3575 <term>3576 <methodsynopsis language="java">3577 <modifier>public</modifier>3578 <void />3579 <methodname>run</methodname>3580 </methodsynopsis>3581 </term>3582 <listitem>3583 <para>3584 This method is called whenever the core thinks it is time to do some3585 management of the secondary storage. How often the <methodname>run()</methodname>3586 method is called is controlled by the <varname>secondary.storage.interval</varname>3587 and <varname>secondary.storage.time</varname> settings in the3588 <filename>base.config</filename> file.3589 When this method is called the controller should:3590 </para>3591 3592 <itemizedlist>3593 <listitem>3594 <para>3595 Move all files which has <constant>action=MOVE_TO_SECONDARY</constant> to3596 the secondary storage. When the file has been moved call3597 <methodname>File.setLocation(Location.SECONDARY)</methodname> to tell the3598 core that the file is now in the secondary storage. You should also call3599 <methodname>File.setAction(File.Action.NOTHING)</methodname> to reset the3600 action attribute.3601 </para>3602 </listitem>3603 3604 <listitem>3605 <para>3606 Restore all files which has <constant>action=MOVE_TO_PRIMARY</constant>.3607 The core will set the location attribute automatically, but you should3608 call <methodname>File.setAction(File.Action.NOTHING)</methodname> to reset3609 the action attribute.3610 </para>3611 </listitem>3612 3613 <listitem>3614 <para>3615 Delete all files from the secondary storage that are not present3616 in the database with <constant>location=Location.SECONDARY</constant>.3617 This includes files which has been deleted and files that have been3618 moved offline or re-uploaded.3619 </para>3620 </listitem>3621 3622 </itemizedlist>3623 3624 <para>3625 As a final act the method should send a message to each user owning3626 files that has been moved from one location to the other. The message3627 should include a list of files that has been moved to the secondary3628 storage and a list of files moved from the secondary storage and a3629 list of files that has been deleted due to some of the reasons above.3630 </para>3631 </listitem>3632 </varlistentry>3633 3634 <varlistentry>3635 <term>3636 <methodsynopsis language="java">3637 <modifier>public</modifier>3638 <void />3639 <methodname>close()</methodname>3640 </methodsynopsis>3641 </term>3642 <listitem>3643 <para>3644 This method is called when the server is closing down. After this the object3645 is never used again.3646 </para>3647 </listitem>3648 </varlistentry>3649 </variablelist>3650 </sect3>3651 3652 <sect3 id="plugin_developer.other.secondary.settings">3653 <title>Configuration settings</title>3654 3655 <para>3656 The configuration settings for the secondary storage controller is located in the3657 <filename>base.config</filename> file. Here is an overview of the settings.3658 For more information read <xref linkend="appendix.base.config" />.3659 </para>3660 3661 <variablelist>3662 <varlistentry>3663 <term><property>secondary.storage.driver</property></term>3664 <listitem>3665 <para>3666 The class name of the secondary storage plug-in.3667 </para>3668 </listitem>3669 </varlistentry>3670 <varlistentry>3671 <term><property>secondary.storage.init</property></term>3672 <listitem>3673 <para>3674 Initialisation parameters sent to the plug-in by calling the3675 <methodname>init()</methodname> method.3676 </para>3677 </listitem>3678 </varlistentry>3679 <varlistentry>3680 <term><property>secondary.storage.interval</property></term>3681 <listitem>3682 <para>3683 Interval in seconds between each execution of the secondary storage3684 controller plug-in.3685 </para>3686 </listitem>3687 </varlistentry>3688 <varlistentry>3689 <term><property>secondary.storage.time</property></term>3690 <listitem>3691 <para>3692 Time points during the day when the secondary storage controller plugin3693 should be executed.3694 </para>3695 </listitem>3696 </varlistentry>3697 </variablelist>3698 </sect3>3699 </sect2>3700 3467 3701 3468 <sect2 id="plugin_developer.other.unpacker"> -
trunk/doc/src/docbook/user/file_system.xml
r7480 r7598 866 866 </warning> 867 867 </sect3> 868 869 <sect3 id="file_system.handling.move.secondary">870 <title>To the secondary storage</title>871 872 <para>873 This option is only available if the server administrator874 has enabled it.875 </para>876 877 <para>878 The secondary storage is a kind of storage were it is appropriate879 to store files that have been used and no longer requires immediate880 access. Moving a file to and from the secondary storage is the job881 of a plug-in, which is usually executed once or twice a day.882 </para>883 884 <para>885 First, select all files in the current path that should be moved886 and then click on887 <menuchoice>888 <guibutton>Move…</guibutton>889 <guisubmenu>To secondary location</guisubmenu>890 </menuchoice>891 in the toolbar. The only thing that will happen is that BASE sets a flag892 on each file. The next time the secondary storage plug-in893 is executed, the files will be moved to the secondary storage. The894 actual file contents is deleted from the server's disk.895 </para>896 897 <para>898 While the file is in the secondary storage BASE behaves in the same way as899 if the file is offline. Th file cannot be used to import data from, or900 other things. To use the file again, the file must be moved back to901 the primary storage.902 </para>903 904 <para>905 To bring files back from the secondary storage, select the files906 and then click on907 <menuchoice>908 <guibutton>Move…</guibutton>909 <guisubmenu>To primary location</guisubmenu>910 </menuchoice> in the toolbar. The files will be moved back the next911 time the secondary storage plug-in is executed.912 </para>913 914 <note>915 <title>Do not forget to set quota for the secondary storage</title>916 <para>917 The default installation does not assign quota for the918 secondary storage. Unless the administrator assigns quota919 the move will silently fail.920 </para>921 </note>922 </sect3>923 924 868 </sect2> 925 869 … … 931 875 file, like downloading the file and viewing the file. The same icons appear 932 876 on the single-item view and in most other places where files are used. 933 You cannot view or download files that have been moved offline or to the 934 secondary storage. 877 You cannot view or download files that have been moved offline. 935 878 </para> 936 879 <sect3 id="file_system.handling.actions.download">
Note: See TracChangeset
for help on using the changeset viewer.