Admin Guide

download Admin Guide

of 93

Transcript of Admin Guide

  • D3 NT 7.5

    System Administration Guide

  • Copyright (c) 1982, 2006. Raining Data Corporation. All rights reserved. Raining Data, TigerLogic, D3 (D3), Pick, Omnis, mvDesigner, and mvEnterprise are trademarks of Raining Data Corporation.

    This product may include or be accompanied by software developed by third parties, including those listed below. Software from third parties may be subject to additional or different license terms. For details, please see the Raining Data End User License Agreement, the third party license agreements that accompany the product, and the products documentation.

    Customers of Raining Data may find the following third party open source programs of use ("Open Source Programs"):

    Linux Operating System (only accompanies D3 ProPlus Product). See source code for applicable copyright notices.

    GBD, the GNU Project Debugger. Copyright (c) 2002 Free Software Foundation.

    These Open Source Programs are publicly available at no charge. As a convenience to you, Raining Data may provide you with copies of these Open Source Programs in the same package as Raining Data products. However, these Open Source Programs are not part of Raining Datas product and are not subject to the Raining Data End User License Agreement. Rather, these Open Source Programs are free software; you can redistribute them and/or modify them under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License or (at your option) any later version. These Open Source Programs are distributed in the hope that they will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

    You will find a copy of the GNU General Public License accompanying these Open Source Programs. If you do not, please contact Raining Data. For those Open Source Programs that are provided, source code should also be included on the accompanying media. If not, please contact Raining Data at any time within three (3) years after you acquire this Raining Data product to request a free copy the source code for these Open Source Programs.

    D3 Version: 7.5 NT

    Doc Version: July 2006

  • Preface

    Whether you are new to D3, an experienced user, or a professional developer, D3 is a versatile and accessible system.

    D3 Users Guide focuses on the concepts you need to understand the D3 data model and provides information on how a database is designed, updated, and used.D3 NT 7.5 System Administration Guide iii

  • PrefaceDocument Conventions

    Different typefaces and type styles are used throughout this document to indicate specific information.

    In this document, references to Windows include:

    Windows 2000 and 2003

    Windows XP Professional (Pro)

    Syntax Conventions

    NOTEFor ease of readability, references to a previous D3 release also apply to a previous Advanced Pick release.

    Convention Description

    monospace Indicates code examples, syntax, commands, options, and other keywords recognized by the system.

    monospace bold

    Type words or characters in monospace bold at the TCL prompt. These boldface words are commands, file names, options, and other keywords recognized by the system.

    Italic Variables to be replaced by the value. It can be an actual name, word, or number. For example, file.name might be replaced with CUST.FILE.

    Non-linked references to other documents or topics within this document.

    Emphasis for impact or the first time a word is used. For example, resources and information make up the state of the application.

    n{-m} The letters n and m represent numbers. Numbers are usually input as a single string without commas. Numbers can also be used to define a range designation. The starting and ending numbers are typed with a hyphen between. For example, n{-m} could be replaced by 10 or by 1-31.

    { } Braces ( {} ) delimit a mutually exclusive set of options.

    on | off The vertical line or pipe sign ( | ) separates a mutually exclusive set of options.

    [0 | line | ?] Brackets ( [ ] ) indicate optional entries.iv D3 NT 7.5 System Administration Guide

  • Document ConventionsD3 Naming Conventions

    Throughout this guide there are references to D3, D3, and d3. This is fully intentional and care was taken that every reference is correct.

    D3 Terms

    These D3 terms are used throughout:

    D3 Proper name of the DBMS software product that is referred to as D3 throughout this document.

    d3 The name can appear as d3 when the name appears in the command language or file names.

    Term Description

    connect A Windows user establishes a connection with a virtual machine. The default virtual machine name is pick0. If several virtual machines exist on the same system, the user identifies the virtual machine using a symbolic name such as d3_newyork_branch.Normally, this displays the D3 logon message. As noted elsewhere, the D3 log on and connect steps can be made automatic so a D3 user does not need a logon name and password. This is a logical connection, and has nothing to do with the serial port. There is no process-to-process communication or data movement of any kind.

    log on This term refers to logging on to D3 and Windows. A user logs on by giving a D3 user name, and an optional master dictionary and password. On a turnkey system, this is the only interface the end-user sees.

    disconnect Generally, to disconnect from the D3 environment, execute the exit command. On a turnkey process, disconnecting returns the user to the D3 logon prompt. A user logged on to the D3 virtual machine can disconnect temporarily. The user is still logged on to the D3 virtual machine, suspending the D3 environment until they reconnect to the virtual machine and resume activity.

    process Each D3 user process is an operating system process, making data exchange between the D3 environment and the operating system simple and efficient.D3 NT 7.5 System Administration Guide v

  • PrefaceActive Links

    When this guide is viewed in Portable Document Format (PDF), certain text contains hypertext links like this:

    http://www.rainingdata.com/support/cservice/customer.html

    Underlined cross references are also active links that jump to that topic. These references appear like this:

    See Syntax Conventions for more information.vi D3 NT 7.5 System Administration Guide

  • Related DocumentationRelated DocumentationTo download or order related documentation published by Raining Data Corporation, please refer to the Raining Data Web site at:

    http//www.rainingdata.com/support/documentation/index.htmlD3 NT 7.5 System Administration Guide vii

  • Prefaceviii D3 NT 7.5 System Administration Guide

  • Multiple Virtual Machines on D3 NT . . . . . . . . . . . . . . . . . . . . . . . . 13

    Chapter 3 D3 File System Interface Server Configuration . . . . . . . . . . . 15File Servers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16Client System, Client Thread, and Client-ID . . . . . . . . . . . . . . . . . . 17Configuring the Network . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

    Windows Network Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18Printers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18Tapes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18Domain Controller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18Contents

    Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . iiiDocument Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . iv

    Syntax Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ivD3 Naming Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . vD3 Terms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . vActive Links . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .vi

    Related Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . vii

    Chapter 1 Introduction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1Document Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

    About this Document . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

    Chapter 2 Client Server Architecture . . . . . . . . . . . . . . . . . . . . . . . . . .3Service Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

    Setup Procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5Server Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

    Server Name. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7Server Version. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

    Client Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8Error Logging. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

    Error Codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9Server Command Line Options . . . . . . . . . . . . . . . . . . . . . . . . . . . 11D3 NT 7.5 System Administration Guide ix

    Network Controller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19Network Domain . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20Directory Structure. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

  • ContentsMDS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .22Database . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .23

    D-Pointers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .23Q-Pointers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .24

    Table Naming Conventions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .25Valid Names. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .26Table Control Block (TCB). . . . . . . . . . . . . . . . . . . . . . . . . . . . .26Hashed Table Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .26Primary Table Space . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .27

    Distributed Record Locks. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .29File System Memory Usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .30

    Chapter 4 D3 Registry Keys . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31Server Registry Keys . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .32

    Current Version . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .32D3Fsi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .32D3Odbc. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .34D3Vme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .34Debug. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .42FlashBASIC. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .42Indexes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .42Rpc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .43Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .43

    Client Registry Keys . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .44Current Version . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .44FSI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .44FlashBASIC. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .45Rpc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .45

    Manually Installed Keys. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .46D3Fsi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .46D3Odbc. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .47D3Vme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .47Data Interface Provider . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .49Debug. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .49FlashBasic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .50Client . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .50Transactions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .51

    Appendix A D3 File Sizer Utility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53Accessing the Background Monitor . . . . . . . . . . . . . . . . . . . . . . . . .55

    Starting the Background Monitor . . . . . . . . . . . . . . . . . . . . . . . .55Stopping the Background Monitor. . . . . . . . . . . . . . . . . . . . . . . .56Displaying the Background Monitor Status . . . . . . . . . . . . . . . . . .56Modifying the Wake-up Date and Time . . . . . . . . . . . . . . . . . . . .58Modifying Background Monitor Options . . . . . . . . . . . . . . . . . . . .59x D3 NT 7.5 System Administration Guide

    Starting the D3 File Sizer Utility . . . . . . . . . . . . . . . . . . . . . . . . . . .61

  • ContentsViewing File Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62Displaying All Files. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64Displaying Selected Files. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64Displaying Undersized Files . . . . . . . . . . . . . . . . . . . . . . . . . . . 65Displaying Monitored Files. . . . . . . . . . . . . . . . . . . . . . . . . . . . 65

    Modifying Individual File Entries . . . . . . . . . . . . . . . . . . . . . . . . . . 66Viewing Individual File Statistics . . . . . . . . . . . . . . . . . . . . . . . 66Adding a File to the List of Selected Files . . . . . . . . . . . . . . . . . 66Clearing the List of Selected Files . . . . . . . . . . . . . . . . . . . . . . 67Deleting Files from the List of Selected Files . . . . . . . . . . . . . . . 67Resizing an Individual File . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68Searching the List for a Specific Character String . . . . . . . . . . . . 69

    Using the Log File. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70Displaying the Log File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70Clearing the Log File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71

    D3 File Sizer Utility Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . 72

    Appendix B Customer Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73Contacting Customer Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74

    Providing Required System Information . . . . . . . . . . . . . . . . . . . 74Receiving Extended Support Services . . . . . . . . . . . . . . . . . . . . 74Purchasing Support Packages . . . . . . . . . . . . . . . . . . . . . . . . . . 74Activating Your Software. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74

    Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75D3 NT 7.5 System Administration Guide xi

  • Contentsxii D3 NT 7.5 System Administration Guide

  • Chapter 1 Introduction

    The System Administration Guide for D3 NT provides information for configuring D3 Servers and Clients, networks and files.D3 NT 7.5 System Administration Guide 1

  • IntroductionDocument OverviewThis document presents the utilities and other topics designed to help you administer and configure D3 NT.

    About this Document

    Use the table below as a guide to this document:

    Topic Description

    Introduction Discusses the document organization and conventions used.

    Client Server Architecture

    Describes the general principles that apply to all D3 Clients and Servers.

    D3 File System Interface Server Configuration

    D3 file system is a fully distributed architecture and supports the D3 database.

    D3 Registry Keys Discusses registry key settings for the D3 Server and D3 Client applications.

    D3 File Sizer Utility Use the D3 File Sizer Utility to resize D3 NT or D3 UNIX files automatically or manually.

    Customer Service Raining Data Customer Service contact information.2 D3 NT 7.5 System Administration Guide

  • Telnet clients.

    From DOS.

    C++ and Visual Basic objects through Remote Procedure calls.

    The VME normally accesses files and accounts that are physically located outside of the VME - files managed by the D3 File System, or FSI.Chapter 2 Client Server Architecture

    This section describes the general principles that apply to all D3 NT Clients and Servers. For more information about servers, see D3 Users Guide.

    A D3 environment is built around the use of objects, or resources, on a network. Objects perform tasks and act on data. Objects are managed by server processes and are used by client processes. Any system on the network can be assigned either or both roles, depending on its capabilities (CPU, memory, disk, tape devices, and so on). D3 objects can be a variety of database resources (domain, database, table, records) or system resources (tape, printer).

    When started, the servers announce the service they are providing to a Name Service provider, allowing clients on the server to access them.

    Understanding the mechanisms of how clients access the available services will assist you in obtaining optimum performance.

    The Virtual Machine Environment (VME) is a service that provides an ASCII mode backward compatible environment with classic Pick applications.

    Users can access the VME from:

    Local terminals connected directly to the Windows server, either directly or though modems.D3 NT 7.5 System Administration Guide 3

    The File System Interface (FSI) is a D3 service, normally started automatically when the D3 VME service is started. The FSI is a multithreaded process which is able to service several client requests. The FSI service also centralizes the record locks associated to the tables it manages.

  • Client Server ArchitectureThere are several advantages in locating files in the FSI:

    Full client-server architecture.

    Data is shared with other applications or with other VME environments, allowing VME users access to several systems.

    Data is distributed. Accounts and files are read from many servers, improving performance and reliability.

    Disk space is used more wisely. The VME can be left to a very small size, since it needs to handle only spool jobs, user workspace, and some small required files in the dm account.

    Variable record length of up to 2 gigabytes.

    Complete transparency. Records can contain any type of data.

    Maximum table size of 2 terabytes per table.

    Unlimited number of tables in a database.

    Object-oriented architecture. Application development tools in Pick/BASIC, FlashBASIC, Visual Basic and C++. Also support of OLE 2.0.

    File system is more reliable. Because files are distinct objects on the network, locks and disk space are handled independently of other files, limiting risks.4 D3 NT 7.5 System Administration Guide

  • Service SetupService SetupOn Windows, D3 services are controlled by the Service Control Manager. By default, the services are set to logon to the default local system account. This account is suitable for a single machine configuration, but the System Administrator should set up a Windows account for the D3 Services to log on to. Some advantages include:

    Service runs as this user, making it easier to control security.

    When the service starts, the user configuration can be set to have a series of printers, mapped drives, and substituted drive letters.

    Setup Procedure

    The LocalSystem default permissions may be viewed and changed in Windows Services.

    To set up a logon account:

    1. Double-click Services from the Control Panel.

    The Services dialog box displays.

    2. Right click on the D3 VME service, and then select Properties.

    3. Select the Log On Tab.

    LocalSystem Account is selected and a check box to Allow service to interact with the desktop., and then the This account: radio button.

    4. Select This Account.

    LocalSystem populates this field as well as several asterisks for the Password and Confirm Password fields.

    5. Select the Browse button.

    The Select User dialog box displays.

    6. Select a user with Administrative Rights and select OK.

    NOTE The D3 VME requires Administrative rights to access ANY peripheral device in your network environment.

    NOTE On Windows XP, type in the word Administrator in the Enter the Object Name to Select, and select OK.D3 NT 7.5 System Administration Guide 5

  • Client Server ArchitectureThis Account is now populated with the new Administrative User.

    7. Type and confirm the password used by this Administrative User and select OK.

    A message displays indicating that the Service had been granted Administrative Rights.

    8. Shut down and restart the D3 VME for the changes to take effect.

    NOTE You cannot change the password that originally existed for the Administrative User at this time. You must know this password. Alternatively, you may create a new user with Administrative Rights and set the D3 VME to use this user with a password that you designate. To do so you must be logged on to the D3 Server with Administrative Rights. If you can stop and start any of the Windows Services you have Administrative Rights.The Administrative User in Windows by default, is blank (It does not initially come with a password and on many sites remains that way.) If you do not know the password for the Administrative User, try using the blank password. 6 D3 NT 7.5 System Administration Guide

  • Server ConfigurationServer ConfigurationSee Server Registry Keys to review the server Registry entries.

    Server Name

    The FSI configuration is placed in the Windows Registry by the installation procedure. The FSI server name is in Registry entry MdsServerName in the key:

    HKEY_LOCAL_MACHINE/SOFTWARE/RainingData/D3/CurrentVersion/D3Fsi

    The D3 server name can be modified via the D3 Device Manager.

    A D3 server on the network is uniquely identified by a name.

    The name can be a:

    Network computer name

    Reserved key words for special servers (for example, mds, pick0)

    Alias

    Server Version

    The D3 server version is stored in a registry entry called MonitorVersion in the key:

    HKEY_LOCAL_MACHINE/SOFTWARE/RainingData/D3/CurrentVersion/D3 NT 7.5 System Administration Guide 7

  • Client Server ArchitectureClient ConfigurationThe client configuration is placed in the Windows Registry by the installation procedure. See Client Registry Keys for specific Registry entry information.

    There is normally no need to configure clients. In this type of network, the Name Service is unavailable. For performance reasons, it is possible to set the client's registry so that it does not attempt to locate any Name Service provider.

    It is also possible to restrict the protocols used by RPC when accessing remote resources. The registry values DefaultProtocols and UseProtocols describe this. The following are examples of protocols supported by RPC.

    This list is not exhaustive:

    NOTE This setting is not absolutely necessary, but it does significantly speed up the first connection phase to a given server.

    ncalrpc Local RPC (Windows only)

    ncacn_nb_nb NetBIOS over NetBEUI

    ncacn_np Named Pipes

    ncacn_ip_tcp TCP/IP

    ncacn_nb_tcp NetBIOS over TCP

    ncacn_n_ipx NetBIOS over IPX

    ncacn_spx SPX8 D3 NT 7.5 System Administration Guide

  • Error LoggingError LoggingBoth clients and servers may log errors in the system. Servers running in the background usually do not display messages on the screen in the case of an incident. Therefore, if you encounter a problem, it is important to check the log.

    The log displays the Error Codes and a short explanation.

    On Windows, D3 errors are logged in the Windows Event Log. Use the Event Viewer, Application log. For the FSI, the registry setting LogIAC enables or disables the logging of Interpret As Command (IAC) event messages. The default (0) disables logging IAC event messages, and one (1) enables logging IAC event messages.

    The LogIAC parameters are stored in the key:

    HKEY_LOCAL_MACHINE/SOFTWARE/RainingData/D3/CurrentVersion

    Error Codes

    All errors, incidents, and information messages are encoded in a string composed of various numeric fields. Normally, the string is translated into a readable form in a language selected by the current user locale, and both forms are stored in the error log.

    It is important to understand the internal format for error codes because, in some extreme cases, the system will not be able to convert an error code into a readable form.

    Exception Classes

    Errors or incidents are grouped in classes of errors, and each class is divided into exceptions. The exception code is a unique decimal number, starting at 1025.

    D3_RPC Remote Procedure Call Exceptions. Exceptions of this class indicate network, Name Service or Windows Service Control Manager errors.

    D3_FSI File System Interface Errors.

    D3_ VME Virtual Machine Environment errors. These include the class Pick virtual errors.D3 NT 7.5 System Administration Guide 9

  • Client Server ArchitectureError codes are listed in the Messages file in the DM database. The item-IDs are formatted by prefixing the left-justified decimal exception code with the string NE (for example, NE2320).

    NOTE D3 NT has one Messages file in each Virtual Machine Environment. It also has one FSI Messages file in the DM database, which is created if it does not exist on the domain at installation time. This latter copy is the one actually used by the various parts of the system. 10 D3 NT 7.5 System Administration Guide

  • Server Command Line OptionsServer Command Line OptionsAll D3 servers share the following common set of options. The D3 Server executable files are located in the D3Programs directory:

    Syntax

    d3vme.exe { [ /install | /remove | /debug | /start | /stop | /kill | /unexport { service } | /ping { server } ] }

    d3fsi.exe /mds

    Parameters

    /install Install the service on the server.On Windows, the service is added to the Windows Service Database. The control panel Services applet allows you to control the service.This command also registers the interface to the Microsoft Locator Service, if available.NOTEThe /install option must be run again when: The server.exe file is moved to a new location.

    Failure to do so results in the service not being started automatically at boot time.

    New network protocols are added to the system. Failure to do so prevents the server from using the new protocols.

    /remove Remove the service from the server./debug Start the service in foreground. This option should

    be used only to perform special operations. The service must be stopped for this command to succeed.

    /start Start the service in background, but not under the control of the Service Control Manager. In other words, the SCM would not show the service as started. Only one instance of the service can run. If another instance is started, it terminates silently (see Error Logging).D3 NT 7.5 System Administration Guide 11

  • Client Server ArchitectureAdditional options may be available for the various servers.

    /stop Request to stop the service on the system. NOTEThe actual service shutdown may not occur immediately. The service waits until all current requests are completed. If the server cannot be reached or if the service is already shut down, this command reports a failure.

    /kill Kill the server running on the system unconditionally. This command should be used with extreme care since current calls will be interrupted and resources may not be released. Use /stop first.

    /unexport { service } Remove from the Name Service all references to the specified service on the current server. If service is not specified, the service implicitly provided by the server is removed. Extreme care must be used if a service is still running when specifying this command, since it makes the service inaccessible. Only the /kill option can terminate a service made inaccessible by this option.

    /ping { server } Test whether the service on the specified server is available. If server is not specified, the service on the current system is checked.

    /pdebug Starts up a VME Service in debug mode as well as starting a d3pdebug process.

    /mds Creates a new FSI database.12 D3 NT 7.5 System Administration Guide

  • Multiple Virtual Machines on D3 NTMultiple Virtual Machines on D3 NTMultiple VMEs are introduced to spread resource utilization across separate systems. The database is shared, not separate. Each VME on the network uses the FSI data served up by the main server, the MDS Server. Processing done on that data occurs by transferring FSI data across the network to workspace in each separate VME, so the secondary machines CPU and memory resources are the ones that control the performance.

    On D3 NT, each virtual machine (VME) must be on its own hardware system. There can be only one instance of the D3 executable, d3vme.exe, running on the system. Each VME shares the FSI data from the main server, the MDS Server. The licensing is stored in the FSI, so the only system that needs activation is the MDS server. User licenses are then shared among the VMEs.

    The Main server is installed first, or in most cases, has already been installed and is a functioning D3 NT system. It is defined as the one and only MDS server on the network. It uses the system ID to activate the total number of client licenses that were purchased.

    To add a second VME, install D3 NT on a second system as a server installation, and choose the Custom installation method. Clear the ODBC Server and FSI Server options. Enter the name of the Main server where the FSI is located in the text box that prompts for MDS Server Name, and then continue with the installation.

    The second VME should be at the same release and service pack level as the main server. Install the base release on the second system, then run the appropriate service pack upgrade. Run Nt_upgrade on the second VME. Although the FSI is redundantly upgraded as well, this will not hurt the database. If upgrading the second VME to 7.3.3 or later (7.3.0 SP3), you are prompted to activate the system before you can continue. Click OK, then cancel out of the activation. It is not necessary to activate secondary VMEs.

    Tape drive resources cannot be shared between the different VMEs. Each VME is limited to using the tape drives that are physically attached to the system that the VME is installed on.

    Serial terminals are specific to each VME. If the secondary system has a serial controller and dumb terminals, those terminals only log in to the VME on the system where the serial controller is installed.

    Printer resources are available the same way they are on the Main server. If the second system has printer resources available to Windows, they are accessible to the VME. Use the appropriate dev-make commands to configure the printers.

    Printers can be shared among multiple VMEs. First, configure the printer in the VME on the system where the resource is available. Typically, this will be an existing printer already set up on a functioning system. Then, from the second VME, use the D3 NT 7.5 System Administration Guide 13

  • Client Server ArchitecturePickRemote device type in the dev-make command to access the first VMEs printer resource:

    Syntax

    dev-make -t PickRemote -n -a ",,"where:pib number of the source machineremote VME computer namepib# of the master process on the remote machineconnect timeout in milliseconds

    Example

    On Machine 1:

    dev-make -t NTPrinter -n 5 -a " a valid printer name "startptr 1,1,1,s5 (s

    On Machine 2:

    dev-make -t PickRemote -n 3 -a "machine1,5,1000"startptr 0,0,1,s3 (ssp-assign f0list md (p

    The listing is sent to the " a valid printer name " printer that is installed on machine 1.14 D3 NT 7.5 System Administration Guide

  • Chapter 3 D3 File System Interface Server Configuration

    The D3 file system has fully distributed architecture and supports the D3 database. Any element of the file system can be on any server on the network, transparent to all applications.

    The D3 file system main features include:

    Full Client Server Architecture

    Variable record length of up to 2 GB

    Complete transparencyRecords can contain any type of data

    Maximum table size of 2 terabytes per table

    Unlimited number of tables in a database

    Object-oriented architecture

    Application development tools in BASIC, FlashBASIC, Visual Basic 6.0. Also support of COM components and OLE automation.

    Heterogeneous network architecture, where Windows and POSIX-compliant UNIX Servers can coexistD3 NT 7.5 System Administration Guide 15

  • D3 File System Interface Server ConfigurationFile ServersThe D3 file servers on a network can run Windows Server and Windows workstation. A D3 file server must be started on every machine on the system that has at least one D3 file on its local or mapped disks.

    A file server is uniquely identified inside a domain by its network name or an optional alias. This name, followed by a colon, is used as a prefix to the D3 MDS when referencing a table. For example, prod:ba,entity refers to a table located on the prod server.

    The file server should be configured to support the required number of concurrent clients. For example, on a network with 100 clients, only 20 might make file accesses at any given time. It is important to evaluate the number of concurrent accesses at any given time.

    If the client thread is a thread running inside the VME in Windows (see D3 Users Guide), the thread-ID is replaced by the PIB number. Usually, a thread number is a large number (for example, 0xfffff00a0), which may appear negative in decimal, and a PIB number is always a small number from 0 to a few thousand. It is normally easy to tell the difference. For example, dev(12) is the PIB 12 running on the Virtual Machine Environment on the system dev.16 D3 NT 7.5 System Administration Guide

  • Client System, Client Thread, and Client-IDClient System, Client Thread, and Client-ID

    The client system can be any system running Windows Server or Windows workstation. A client system is identified by its unique network computer name, limited to 16 characters. A client system can also be a server. The client system is the basic unit when it comes to licensing.

    Client applications run on a client system composed of one or more processes, each composed of one or more threads. The basic unit used to identify a client is the thread. In other words, a Windows application running three threads (for example, one selecting, one updating the table being selected, and one accessing another table) is actually seen as three client threads, or alternatively, as three clients. Note, however, that with regard to licensing, only one client system is counted as one licensed user, whatever the number of clients' threads running on it.

    A client thread is identified by a unique client-ID, which is unique across the network inside a domain and valid as long as the thread is running. The client-ID is composed of the computer name of the client system and the Windows thread-ID of the client thread, usually represented in hexadecimal prefixed by 0x (zero and the letter x). The client-ID is represented as follows:

    system(thread)

    For example, dev(0xffff00a0) represents a thread running on dev.D3 NT 7.5 System Administration Guide 17

  • D3 File System Interface Server ConfigurationConfiguring the Network

    Windows Network Setup

    A Windows-based network can be configured either as a Domain or a Workgroup. Because of the superior security administration, the domain configuration is recommended.

    One of the Windows Servers acts as the Domain Controller. This server, aside from its special administrative purpose, can also be used as any other servers on the network. Note, however, that because of its importance, it should be well protected. If possible, a second server, the Domain Backup Controller, should be designated to take over the security role of the domain controller in case of failure.

    Client machines running Windows workstation should be set up to logon to the domain.

    Printers

    Windows can manage one or more printers when the printers are made available to the D3 application.

    Tapes

    Any tape driver on a Windows Server can be used to back up D3 files using Windows back up utilities, D3-compatible save, or a D3-specific tool to provide additional functionality.

    Domain Controller

    A special server on the network, responsible for administering the various servers and clients. This server holds the Windows security database. For security reasons, a backup domain controller should also be created on the network. See Microsoft Windows documentation for more information.

    NOTE For mission-critical applications, to backup the entire database, at least one tape drive on a Windows Server is required.18 D3 NT 7.5 System Administration Guide

  • Configuring the NetworkNetwork Controller

    The network controller, or MDS Server, is a dedicated server that holds the MDS table. Any server can be designated as a network controller, but, for security reasons, this should be the Domain Controller.

    The network controller is identified by the presence of the value MdsServerName in the Server Configuration. This server is also known as the MDS Server.D3 NT 7.5 System Administration Guide 19

  • D3 File System Interface Server ConfigurationNetwork DomainThe network domain is a notion that defines a set of D3 Servers and Clients on a network. On Windows, it matches the Windows domain. Because of this one-to-one relationship, a network domain in D3 terminology is simply called a domain.

    The domain is the basic space seen by a D3 application. It defines the resources an application can see and use. Access to the resources on the domain are controlled by the Windows Domain Controller. It is possible to access one domain from another by specifying an explicit domain name, as detailed in MDS.20 D3 NT 7.5 System Administration Guide

  • Directory StructureDirectory StructureThe various pieces of the file system on a given server are stored in a multilevel tree structure that has the following structure ($HOME represents the default directory of the FSI Server):

    For example, the data level entity.old of the table entity in the ba database is stored on the directory:

    $HOME/ba/entity/entity.old

    The root directory of a file system can be changed by specifying an explicit path name in the Table Naming Conventions.

    The database directory name is always stored in lowercase; therefore, the database name is always case insensitive.

    The dictionary and data level directory names are stored in lowercase, if the table database is case insensitive (default), or are encoded in a unique manner, if the database is case sensitive, so that abc and Abc can be stored under different directories. Note, however, that the final table name is always stored in lowercase. For example, the table entity.old, from the example above, would be stored under:

    $HOME/ba/entity/entity.old On a case insensitive database.$HOME/$000120/$000121/entity.old On a case sensitive database.D3 NT 7.5 System Administration Guide 21

  • D3 File System Interface Server ConfigurationMDSThe MDS is the root of the D3 file system. It contains pointers to the databases. It is located on a special server on the network and designated as the Network Controller. Normally, the network controller would be the Domain Controller. The D3 FSI Server running on the network controller acts as a file server for both the MDS and the ordinary accounts and files located on this system.

    The MDS also contains special items (such as the default logon banner).

    In practice, there should be only one MDS per domain. However, there are ways to create another MDS and access this file system from C++.22 D3 NT 7.5 System Administration Guide

  • DatabaseDatabaseThe database is the main element the application works with. A database is a collection of related application tables. The root of the database table structure is the master dictionary (MD), which contains pointers to the various tables in the database.

    The Master Dictionary can be located on any server on the network. The tables are pointed at by D-pointers or Q-pointers.

    D-Pointers

    A D-pointer is a special record in a database master dictionary or in a table dictionary that contains information about a table.

    The format of a D-pointer is as follows:

    0 (id) D3 Table Name1 D{code}{X,Y,S}2 Full path name Server: {host file path / } dict {/ data

    } / file3 Modulo (hashed Table) or zero (Direct Table)D3 NT 7.5 System Administration Guide 23

  • D3 File System Interface Server ConfigurationAny field in the full path name can contain D3 environment variables $(name). Environment variables are useful in encoding the server name and the root path; making moving a table easy. The following names are reserved:

    Other environment variables are searched in the table Dm,Catalogue,Environment and replaced with the first attribute of the record that has a key equal to the variable name. The variable name is case insensitive. An environment name can be specified when creating a new table. For example, creating a table on the server $(accounting), on the host driver $(acc.root), where accounting and acc.root are records in the environment file:

    accounting

    001 NT_301

    acc.root

    001 D:\Home\Accounting

    would actually create the table on the server, NT_301, and place the data under D:\Home\Accounting. Moving this table to another server or another location only requires changing the environment.

    Q-Pointers

    A Q-pointer is a special record in a database master dictionary or in a table dictionary that points to another table.

    The format of a Q-pointer is:

    $(MD) Replaced by the root directory name of the database.$(MDS) Replaced by the network computer name of the MDS Server.$(ROOT) Replaced by an empty string, indicating the D3 root.

    NOTE The optional internal code identifies the type of file.

    A D-pointer is created automatically by the file system when creating a table. They should not be edited manually nor deleted by a simple delete command.

    0 (id) Raining Data table name1 Q2 Optional database name3 Table name (see MDS)24 D3 NT 7.5 System Administration Guide

  • Table Naming ConventionsTable Naming ConventionsA D3 table name is composed as follows:

    {[domain]} { account, } dictionary {, data level }

    domain (Optional) Network Domain name is case insensitive.

    Name is the Windows domain name.

    Computer name can also be specified by prefixing it by two consecutive forward or backslashes.

    Used only to access a D3 network domain other than the one to which the user is currently logged on.

    Available only when the client is installed as part of a Windows domain.

    database Database name is case insensitive. If omitted, the current database is used to locate the tables.

    Maximum size is 50 characters.

    Database name cannot contain any of the following reserved characters:

    ? " / \ < > * | : [ ] , (comma)

    dictionary RequiredDictionary name is either case sensitive or insensitive, depending on the database options.

    Maximum size is 50 characters.

    Dictionary name cannot contain any of the following reserved characters:

    ' " , (comma)data level RequiredData level name.

    Maximum size is 50 characters.

    Data level name cannot contain any of the following reserved characters:

    " , (comma) Default data level (the one with the

    same name as the dictionary, if present) is used if not specified.D3 NT 7.5 System Administration Guide 25

  • D3 File System Interface Server ConfigurationFully qualified table names can be used from:

    VME

    FlashBASIC module

    Visual Basic applications

    C++ applications

    Valid Names

    Table Control Block (TCB)

    A special block of data associated with a table, which contains detailed information about the table.

    Hashed Table Structure

    A D3 hashed table is a binary host table of a size equal to the modulo times the frame size, internally divided into groups. Modulo is the number of frames in the primary space of a hashed table.

    entity Refers to the data level entity of the dictionary entity in the current database.

    entity,entity.bak Refers to the data level entity.bak of the dictionary entity in the current database.

    ba,entity, Refers to the data level entity of the dictionary entity in the database ba.

    ba,entity,entity.bak Refers to the data level entity.bak of the dictionary entity in the database ba.

    [accounting]dm,users, Refers to the table users in the database dm in the domain accounting. This would be a way to access the users file in another domain.

    [//srv0]dm,users, Refers to the table users in the database dm in the domain for which srv0 is the MDS server. This would be another way to access the users file in another domain.26 D3 NT 7.5 System Administration Guide

  • Table Naming ConventionsA hashed table is composed of several host tables with the following reserved table extensions:

    Primary Table Space

    Space set aside on disk when a hashed table is created. The size of this space is equal to the modulo of the table multiplied by the frame size.

    The Primary Table Space of a hashed table is a binary host table, created when the D3 table is created, internally divided in a number of equal size frames of a size chosen at creation time from 1 KB to 4 MB (4 KB by default). Records are written into the primary space using a hash coding technique.

    When records do not fit in the frame they hash into, the data is stored in an overflow table, which is created only when the primary space overflows for the first time. An overflow table is an optional table used to extend a hashed table. The overflow table is created only if the primary space of the hashed table becomes full.

    mds.D3S The MDS table. There is normally only one MDS table per domain.

    database.D3M Master dictionary of a database can be located on any system on the network. The master dictionary is the root of the database table structure. By convention, the location of the master dictionary on the network is the location of the database, even though the tables in the database can be on another server.

    tablename.D3T The actual body or Primary Table Space of the hashed table. This can be a dictionary or a data level.

    tablename.D3C Table Control Block (TCB)There is one table control block associated to each of the tables with the extensions D3S, D3M, and D3T and it is located on the same directory.

    tablename.D3O An optional overflow table. This table is only created on demand. It is located in the same directory as the table it extends (one of the tables with the extensions D3S, D3M, and D3T).

    tablenameNNN.D3X An optional index table. This table is only created on demand. It is located in the same directory as the table. NNN is an index number that uniquely identifies the index.

    NOTE The various tables that make up a hashed file should never be moved or deleted. The D3 File Manager allows manipulating these files as a unit.D3 NT 7.5 System Administration Guide 27

  • D3 File System Interface Server ConfigurationThe overflow table is itself extended on demand, as required. If the overflow table becomes large, it is an indication that the hashed table is not properly sized and probably should be resized. Any space dedicated to the overflow table is automatically released when the overflow frames in a stream are released.

    The overflow table is an extensible binary host table, divided in frames of a size equal to the table it is complementing, and managed with a bit map to determine what is used.28 D3 NT 7.5 System Administration Guide

  • Distributed Record LocksDistributed Record LocksRecord locks are maintained by the server that holds the table. There is a record lock table per section of table, one for the dictionary and one for each data level, to ensure low conflicts between threads. The D3 File Manager applet shows the outstanding locks and can clear them. There is no limit on the number of record locks that can exist on the network.

    When a record lock is set, the FSI server uses the unique Client ID to identify the owner (see Client System, Client Thread, and Client-ID).D3 NT 7.5 System Administration Guide 29

  • D3 File System Interface Server ConfigurationFile System Memory UsageThis topic explains the mechanisms involved in internal memory management. This explanation is intended only to help in system configuration and tuning, and to understand the various performance counters explained in D3 Users Guide.

    A D3 table is composed of various Windows files, as detailed in Hashed Table Structure. These various Windows files are mapped in the addressing space of the file system server by pages of 64 KB, or less if the total file size is less than 64 KB. Memory mapping of files makes access to Windows files very efficient because it eliminates the double buffering associated with classic I/O. However, most Windows systems do not allow mapping more than 2 GB of memory, while some allow 3 GB of memory (64 bit versions of Windows allow 4 GB). Since a D3 application can access very large amounts of data, it would be impossible to map all files simultaneously; therefore, some level of memory management is required.

    The server maintains a table of all the pages currently mapped into memory. This table allows mapping approximately 1.5 GB of memory at any given time. The maximum size of the mapped files can be limited by the registry value MaxMemory. When a new page is needed, the system unmaps the least used page and maps the requested page. This gives the system an infinite virtual space. Note that the file that is partially unmapped remains opened. Therefore, when the unmapped page needs to be brought back in, there is no performance cost in reopening it. Also, the unmapped page is not necessarily removed from memory; it remains in the Windows file cache and is readily available if requested.

    The 64 KB page size is a compromise between direct access and sequential access. One map operation brings 16 frames (for a 4 KB frame size table) in the virtual addressing space, but not necessarily in physical memory, which helps in sequential operations.

    NOTE There is no memory management of the data itself. All D3 data is located in the Windows file cache, thus allowing smooth coexistence with other applications.30 D3 NT 7.5 System Administration Guide

  • D3Odbc

    D3Vme

    Debug

    FlashBASIC

    Indexes

    Rpc

    FlashBASIC

    RpcChapter 4 D3 Registry Keys

    This topic discusses registry key settings for the D3 Server and D3 Client applications.

    The majority of the registry keys and values presented here are created during the D3 installation, depending on whether you installed the server or the client. However, some of the values described only display in the Registry if the default value is not used. Further, the keys presented in Manually Installed Keys are not installed and must be created manually.

    D3 server and client registry keys are stored in the following root key:

    HKEY_LOCAL_MACHINE/SOFTWARE/RainingData/D3/CurrentVersion/

    The Current Version key in turn contains multiple subkeys:

    NOTE For 64 bit Windows versions, the keys are stored in this root key:HKEY_LOCAL_MACHINE/SOFTWARE/WOW6432Node/RainingData/D3/CurrentVersion/

    For Server Installations: For Client Installations:

    D3Fsi D3FsiD3 NT 7.5 System Administration Guide 31

    Each of these subkeys may contain their own subkeys. All values contained within the keys are of the type REG_SZ (string). These topics are presented:

    Services

  • D3 Registry Keys Server Registry Keys

    Client Registry Keys

    Manually Installed Keys32 D3 NT 7.5 System Administration Guide

  • Server Registry KeysServer Registry KeysThis topic presents the registry keys and values installed on a D3 server.

    Current Version

    The CurrentVersion registry key stores these values:

    D3Fsi

    The D3Fsi registry key stores these values:

    Value Description

    InstallDir Root installation directory where all D3 files are installed. The default is C:\Program Files\RainingData\D3.

    LogIAC Enables or disables logging of Interpret As Command (IAC) event messages.0 = Disables logging IAC event messages (default).1 = Enables logging IAC event messages.

    MonitorVersion Monitor version for the Server or Client that is currently installed.

    ProgramFiles Directory where D3 program files are installed. The default is C:\Program Files\RainingData\D3\Programs.

    NOTE A Windows domain client does not require any special configuration. A D3 file system client finds the servers using the Microsoft Locator Name Service, which allows locating databases and files dynamically on the network.

    Value Description

    DefaultDatabase (Optional) Specifies the name of a database when a table name does not include one. Set to dm at install time. For example, callx bp DoUpdate refers to dm,bp, DoUpdate.

    FlushPeriod (Optional) Specifies the flush period in seconds. Guarantees that an update to the database is committed to disk within this period. The default is 10 seconds.D3 NT 7.5 System Administration Guide 33

  • D3 Registry KeysLoadTriggerOnOpen (Optional) Specifies whether the object code for a trigger is checked for recompile once or at each open. Allows the FlashBASIC code to recompile without logging off all users.0 = once (default)1 = at each file openSee Recompiling a Trigger in the D3 Reference Manual for more details.

    MaxMemory (Optional) Specifies in kilobytes the maximum amount of memory to use as a secondary D3 file cache. On large systems, it is preferable to limit this value to the default of 256,000 KB (256 MB).NOTEThis value can be larger than the amount of physical memory without creating access to the page volume.

    Mds Specifies the system configuration. MDS name exists only on the network controller.Mds = Peer-to-peer, the name of the file system (default).Null = Domain, the server is not the network controller.

    MdsServerName Name of the machine that is currently running the FSI Server. The default value is the name of the current machine.

    ObjectReuseProt (Optional) Specifies whether deleted data should be physically erased from the disk. If enabled, other users cannot access objects that are deleted.0 = disabled (default)1 = enabled This option should be enabled for C2 compliance and should be set consistently on all FSI Servers participating in the domain.

    Root Full path for the root of the D3 file system on the server. The installation procedure creates this entry. The default is C:\Program Files\RainingData\D3\D3Database.

    Value Description34 D3 NT 7.5 System Administration Guide

  • Server Registry KeysD3Odbc

    The D3Odbc registry key stores these values:

    D3Vme

    The D3Vme registry key stores values for configuring the Virtual Machine Environment (VME) Server. Values for this key are stored in one of these subkeys: Pick0, ComPorts, Disks, Spooler, Tapes, and Telnet.

    Pick0

    The Pick0 subkey stores these values:

    Value Description

    InactivityTimeout Specifies the ODBC connection timeout in seconds.0 = disabled (default)n = enabled (where n is the number of seconds)

    TraceFile File name (d3odbcsv.log) for trace information output. The full path to the file can be specified. If no path is specified, the file is written to the current directory. The default value is null.

    TraceFlushPeriod Specifies how often (in seconds) trace information is flushed from the buffer and written to the trace file. The default value is 60 seconds.

    TraceOption Enables or disables the ODBC server tracing feature.0 = disabled (default)1 = enabled

    Value Description

    BootMode (Optional) Defines whether the VME boots in single-user or multi-user mode. m = multi-user mode (default)s = single-user modeWhen booting in single-user mode, users cannot log on to the VME as long as the coldstart procedure has not run maxusers (m).D3 NT 7.5 System Administration Guide 35

  • D3 Registry KeysBreakChar (Optional) Code used to emulate a break. Either one character, the letter x followed by two hexadecimal digits or a ^ (caret) followed by a character to represent a control. The default is ^\ for Ctrl+\. For example, ^C for Ctrl+C, ^[ for Esc. If not specified, the Break is disabled. This value should be defined for devices (for example, Telnet) that do not implement a physical Break. This setting can be overridden on a per port basis using the set-break TCL command or by using the stacked input command \b. The displayable character corresponding to a control character is obtained by adding 0x40 to the hexadecimal value of the control.

    DefaultFlashFileSys (Optional) Specifies the default file system to use from FlashBASIC.vme: = uses the VME file system.fsi: = (default) uses the D3 NT file system.

    EscChar (Optional) Code used to push a level (Escape level pushing). Either one character, the letter x followed by two hexadecimal digits, or a ^ (Caret) followed by a character to represent a control. For example, ^A for Ctrl+A, ^[ for Esc. If not specified, the escape level is disabled.

    FlushPeriod (Optional) Defines the amount of time in seconds after which all modified data is written back to disk. The default is 10 seconds.

    Phts (Required) Number of phantom ports available for background processes. The default value is 16.

    Pibs (Required) Number of user ports (PIBs). The default is 256. This is the maximum number of users that can be connected. The actual number of users allowed to log on is controlled by the license. Changing the total of Phts (Phantoms) + PIBs requires a full restore of the VME.

    Root (Required) Base directory for disks. The default is C:\Program Files\RainingData\D3\D3Virtual.

    TelnetDisc (Optional) Specifies whether a connection times out when a Telnet session is established and the user does not log on within 60 seconds.0 = disabled1 = enabled (default)

    Value Description36 D3 NT 7.5 System Administration Guide

  • Server Registry KeysComPorts

    The ComPorts subkey contains zero, one, or more values that define the direct asynchronous connections to the VME. The name of each value is a PIB number, in decimal, which connects to the specified COM port. This value can be edited using the D3 Device Manager. This value is stored:

    Devices added in this manner can be temporarily removed using the dev-remov TCL command (see the D3 Reference Manual for more information).

    TelnetPort (Optional) TCP port number used for incoming Telnet connections.23 = allows the server to be used from any client (default). Change this number only if there is another Telnet server on the same server. -1 = disables the standard Telnet server.

    Value Description

    pib number PIB number, in decimal. The value contains the following comma-delimited string (no space, case insensitive):name, baud, bits, stops, parity {, text1 { , textn, } }(See dev-make command for field information in the D3 Reference Manual for more information.)

    NOTE The optional text in the ComPort values can be used to display a banner when the VME is initialized. Each comma-delimited field displays on a new line (two commas without any text skips a line).For example:15 COM2,9600,8,1,n,,Connected to port 15,,Press return to startdisplays:Connected to port 15Press Return to start

    Value DescriptionD3 NT 7.5 System Administration Guide 37

  • D3 Registry KeysDisks

    The Disks subkey stores these values, which can be edited using the D3 Device Manager:

    Spooler

    The spooler subkey stores these values, which can be edited using the D3 Device Manager:

    FormQueues

    Value Description

    Name (Required) Windows file name where the virtual space is stored. The default is Disk0.d3v. The file must exist and be write-enabled. The actual name used is the concatenation of the root directory specified in the Root value in the previous table and of this name. For example, if the Name is Disk0.d3v, and Root is d:\D3Root\D3Vme, the actual file name is d:\D3Root\D3Vme\Disk0.d3v.

    Size (Required) File size, expressed in 4 KB frames. If the specified size is larger than the actual file size, the file is extended at the next boot to match the requested size. This increases the size of the VME space. If the size is less than the actual file size, an error occurs. The default size is 64,000. The maximum size is a little less than 1,000,000 (almost 4 GB).

    Value Description

    MaxFQ (Optional) The maximum number of form queues (in decimal) to be defined later in the FormQueue subkeys. The default is 16. If the default value is used, there is no Registry entry.

    MaxPrintFile (Optional) The number of print files local to each D3 process. The number is expressed in decimal, and the default is 16. Each D3 process allocates memory for all the print files. If the default value is used, there is no Registry entry.CAUTIONDo not set this number too high.38 D3 NT 7.5 System Administration Guide

  • Server Registry KeysThe Spooler registry key contains the FormQueues subkey, which contains the value below. If the default values are used, there is no Registry entry.

    Examples

    Tapes

    The Tapes subkey can contain up to 48 subkeys from 0 to 47. Each subkey is a tape device. The subkey number is not necessarily the device number seen by the VME. If a key is missing or empty (for example, tapes 0, 1 and 3 are defined and key 2 is empty), the VME renumbers the devices in proper numeric order (for example, 0, 1, and 2). It is best to avoid leaving holes in the list. This value can be edited using the D3 Device Manager.

    Value Description

    Form Queue (Optional) The form queue number in decimal between 0 and 2047. The value data is formatted as follows:device{,page eject{,options}device

    Printer device name defined by Window Print Manager (not the printer pathname); for example, HP LaserJet 4L). The printer can be a local or a network printer.page ejectSpecifies how many blank pages to eject (from 0-9) at the end of a print file. If left blank, no blank pages are ejected.options

    s suppresses leading page eject. For laser printers, use this option in combination with page eject=1. This field is case insensitive.

    0 HP LaserJet 5L,1,s Associates the form queue 0 to the printer HP laserJet 5L, adding a page eject at the end of each job and suppressing the leading page eject.

    12 OkiData Associates the form queue 12 to the printer OkiData, using the default of no page eject at the end of each job and one leading page eject.

    33 OkiData,,s Associates the form queue 33 to the printer OkiData, using the default of no page eject at the end of each job and suppressing the leading page eject. Note the two commas.D3 NT 7.5 System Administration Guide 39

  • D3 Registry Keys

    Each numerical subkey contains these values:

    NOTE Windows requires a device type for sequential tape devices (4mm, 8mm, SCT). This specification is informational only. For example, declaring a 4mm (DAT) as an 8mm tape does work properly.

    WARNING There is no validity control over the tape device name. For example, specifying \\.\d: on Windows destroys the D: drive if it can be opened (that is, if it is not opened by any other application)! This is so a spare disk or partition can be used as a backup medium (for example, a removable hard drive or magnetic-optical drive).

    Value Description

    Density (Optional or required, depending on the Type value.) These options are available:

    h 5.25 1.2 Md 5.25 720 Kq 3.5 1.44 M (default)o 3.5 2.88 Mx Infinite (pseudo devices)l Low Density tape (info only)m Medium density tape (info only)h High density tape (info only)

    Name (Required) Tape device name. This can be a Windows device name or a file name. If this value is empty, the key is considered empty, even if there are other values in the key. The default value is \\.\A.On Windows, a floppy name is \\.\x:, where x is the drive letter (A, B). It is case insensitive. A tape name is \\.\TAPEx, where x is a decimal number starting at 0.For a pseudo tape, the name is any valid host file name. If the file does not exist, it is created the first time the tape is opened (read or write). If the device name does not start with a slash (/), a backslash (\) or an MS-DOS drive letter (X:), the directory specified in the value Root in the key pick0 is added as a prefix. On Windows, the name is case insensitive.40 D3 NT 7.5 System Administration Guide

  • Server Registry KeysSubkey 1 contains these values:

    Subkey 2 contains these values:

    Telnet

    The Telnet subkey contains zero, one, or more values describing how to associate or nail a TCP Telnet port to a PIB. The value name is the decimal value of the TCP port to nail and the values range from 2000 to 32767. The value data is a configuration string described in the table below. See Telnet Emulation in the D3 Users Guide for

    Type (Required) Tape device type. These options are available.d{lbl} 4mm Digital Audio Tape (DAT)

    Density subkey value is ignored for this type.lbl specifies the label size (optional). 80 is the default.

    f FloppyDensity is required (default).h Half-inch tapeDensity is ignored.p Pseudo tape (disk file)Density is ignored.s Quarter-inch tape (SCT)Density is ignored.v 8mm tape (Video)Density is ignored.

    Value Description

    Name Tape device name (can be an NT device name or a file name). The default is C:\Program Files\D3\D3Programs\D3Data.D3P.

    Type Type of tape device where the letter represents the type.p = (default) Pseudo tape (disk file). Density is ignored.

    Value Description

    Name Tape device name (can be an NT device name or a file name). The default is Pseudo0.D3P.

    Type Type of tape device where the letter represents the type.p = (default) Pseudo tape (disk file). Density is ignored.

    Value DescriptionD3 NT 7.5 System Administration Guide 41

  • D3 Registry Keysa description of this mode of operation. If the default values are used, there is no Registry entry. This value can be edited using the D3 Device Manager.

    Examples

    2000 12,,paul,dm,logto accounting,menu,

    The TCP port 2000 is associated to PIB 12. When a Telnet client connects to this port, a carriage return is sent followed by the user-ID paul, the account name dm, the TCL command logto accounting, and finally the user command menu. Note the trailing comma to add the final CR to the command stream.

    3000 13,\t\b\r

    The TCP port 3000 is associated to PIB 13. The port is set in transparent mode (\t) with no break (\b) and reset (\r). Note that there can be no other option after a reset command.

    Value Description

    port (Optional) A string formatted as:pib{,text{,text &ldots;}}where

    pib Decimal value of the PIB to associate to port.

    text Optional stacked input (see dev-make arguments in the D3 Reference Manual).

    NOTE When using optional text, commas are replaced by carriage returns to emulate user input. It is advised to always start with a comma, as in the example below, because after a boot of the VME, the first character of the input string is discarded. If the first field of the input stack starts with a \, it is treated as a command.

    The text can be used to automatically logon to a port as a user and type in user-simulated commands.

    NOTE Nail all PIBs to prevent the default Telnet server from being activated, or nail the TCP port numbers to high PIB numbers and decrease in descending order (by default the PIB number is allocated dynamically starting with low PIB numbers). A nailed TCP port can be used by the default Telnet server.42 D3 NT 7.5 System Administration Guide

  • Server Registry KeysDebug

    The Debug registry key contains this value:

    FlashBASIC

    The FlashBASIC registry key contains these values:

    Indexes

    The Indexes registry key contains this value:

    Value Description

    Password Password for the monitor debugger. The default is support.

    Value Description

    AutomaticIO Telnet client setting for specifying how to handle input and print statements from a module that is not using a terminal device.0 = disables Telnet (default). No output (blank screen) until input is encountered. You must type something to get a response.1 = An SQL process displays a Telnet session on the server to enable user interaction (for debug purposes). 2 = a Telnet session displays on the client to enable user interaction.

    LogErrors Logs all FlashBASIC runtime errors to the event log. 0 = disabled (default)1 = enabled

    TelnetClient Name of the Telnet client. This file must be specified in the PATH environment variable, otherwise the full path must be specified. Parameters to the Telnet program are accepted. The default is telnet40.exe.

    Value Description

    ListCacheSize Maximum amount of memory (in kilobytes) that can be allocated to cache a list. If the size of the cached list exceeds this value, it will be released after use. The default is 256 KB.D3 NT 7.5 System Administration Guide 43

  • D3 Registry KeysRpc

    The Rpc registry key contains these values:

    Services

    The Services registry key contains these values:

    Value Description

    InactivityTimeout Time of inactivity (in seconds) before the connection between the client and the remote server is lost.0 = disabled (default)n = enabled (where n is the number of seconds)

    UseNameService Name service that allows the client to connect to the server without knowing exactly where the server is located. This makes the redistribution of the server more flexible.0 = name service is not used (default)1 = use the name service

    Value Description

    Mode Startup type of the services. The default is automatic.User Account name that the services will log on to. The default is null,

    which represents the Local System.44 D3 NT 7.5 System Administration Guide

  • Client Registry KeysClient Registry KeysThis topic presents the registry keys and values installed with a D3 client.

    Current Version

    The CurrentVersion registry contains these values:

    FSI

    The FSI registry key contains these values:

    Value Description

    InstallDir Root installation directory where all D3 files are installed. The default is C:\Program Files\RainingData\D3.

    MonitorVersion Monitor version for the Server or Client that is currently installed.

    ProgramFiles Directory where D3 program files are installed. The default is C:\Program Files\RainingData\D3\Programs.

    Value Description

    Mds Specifies the system configuration. MDS name exists only on the network controller.Mds = Peer-to-peer, the name of the file system (default).Null = Domain, the server is not the network controller.

    MdsServerName Name of the machine that is currently running the FSI Server.D3 NT 7.5 System Administration Guide 45

  • D3 Registry KeysFlashBASIC

    The FlashBASIC registry key contains these values:

    Rpc

    The Rpc registry key contains these values:

    Value Description

    AutomaticIO Telnet client setting for specifying how to handle input and print statements from a module that is not using a terminal device.0 = disables Telnet (default). No output (blank screen) until input is encountered. You must type something to get a response.2 = for debug purposes. An SQL process will show a Telnet session on the server to enable user interaction.

    LogErrors Logs all FlashBASIC runtime errors to the event log. 0 = disabled (default)1 = enabled

    TelnetClient Name of the Telnet client. This file must be in the PATH, otherwise the full path must be specified. Parameters to the Telnet program are accepted. The default is telnet40.exe.

    Value Description

    InactivityTimeout Time of inactivity (in seconds) before the connection between the client and the remote server is lost.0 = disabled (default)n = enabled (where n is the number of seconds)

    UseNameService Name service that allows the client to connect to the server without knowing exactly where the server is located. This makes the redistribution of the server more flexible.0 = name service is not used (default)1 = use the name service46 D3 NT 7.5 System Administration Guide

  • Manually Installed KeysManually Installed KeysThe registry keys presented in this topic can be manually created.

    D3Fsi

    These values can be created in the D3Fsi registry key:

    Value Description

    CompressLibrary Specifies the file name and directory for the FSI library if the FSI library is placed in a non-default directory. If only the file name is specified, the current directory is used.

    CompressTrigger Specifies the size (in kilobytes) at or above which items are compressed when they are written.0 = no compression (default)

    FileCheck Specifies what action should be taken if a file turns out to be corrupted when it's opened.0 = no action taken (default)1 = verify the file2 = fix the file

    MaxCalls Maximum number of concurrent clients the server can handle.Default values:

    For D3 7.4 and previous: 16

    For D3 7.5 and later: The default value is set to RPC_C_LISTEN_MAX_CALLS_DEFAULT (no more limit, as many RPC's as the computer can handle).

    MTS Allows the MTS (Microsoft transaction server) to be used.0 = disabled (default)1 = enabled

    Name Alternate name for the FSI server. Makes the file system independent from the actual server.If no name is specified (default), the computer network name is used to access data.

    OsfiHostName OSFI host name.OsfiPort OSFI port number. The default value is 1598.D3 NT 7.5 System Administration Guide 47

  • D3 Registry KeysD3Odbc

    This value can be created in the D3Odbc registry key:

    D3Vme

    These values can be created in the D3Vme registry key:

    OsfiRemoteHost Specifies the TCP host/IP address of a port of an OSFI server to use as MDS.If not specified (default), the local MDS is used.

    StartOsfiServer Specifies to automatically start any number of OSFI servers.0 = disabled (default).n = enabled where n is the number of OSFI servers to start.

    TriggerIO Option to control how terminal IO is handled from a FSI trigger. This setting does not affect triggers invoked from a VME client who uses the telnet session, or from a RPC client who uses a call back to the client. The default value is 1.0: No display. Input causes the trigger to abort.1: Display to a Telnet client on the server (default).

    Value Description

    Port Specifies the port number for ODBC connections. The default value is 1603.

    Value Description

    MaxCalls Maximum number of concurrent clients the server can handle. This only includes remote RPC clients, such as VB applications. Telnet clients and local terminals are not included. The default value is 16.

    Name Name of the sub-key containing the information needed to start the VME. The default value is pick0.

    Value Description48 D3 NT 7.5 System Administration Guide

  • Manually Installed KeysPick0

    These values can be created in the Pick0 registry key:

    Disks

    This value can be created in the Disks registry key:

    Tapes

    Value Description

    EscChar Defines the key used to push a level.If not defined, then the esc key acts as a data key. The default value is ^[ (represents Ctrl+[ or the Esc key).

    Pcb0 (Optional) PCB 0 FID in decimal. The default value is 128. This value may need to be changed to load some packages developed in the Virtual Assembler. Changing this value requires a full save and restore of the VME. FSI data is unaffected. If the default value is used, there is no Registry entry.

    TelnetDebugPort TCP port number to use for entering the system debugger. The default value is 9999.-1 = disabled

    TelnetPibs Defines a range from which a PIB is allocated when establishing a Telnet session.Format: {n}-{m}, where n is the first PIB and m is the last PIB in the range.If not specified, n is 1 and m is "max PIB - 1". n cannot be 0.The default value is (blank).

    UseMds Name of the MDS server to use for the remote file system. If not specified, the default MDS is used. The default value is (blank).

    Value Description

    Offset File offset in frames (decimal format) at which the data begins. The default value is 0.D3 NT 7.5 System Administration Guide 49

  • D3 Registry KeysThis value can be created in the Tapes registry key:

    Data Interface Provider

    These values can be created in the Data Interface Provider registry key (which would also need to be created):

    Debug

    This value can be created in the Debug registry key:

    Value Description

    FixedBlockSize Specifies the size in bytes of the fixed block size.f = Fixed block size of 512 bytes.0 = Variable block size (default).

    Value Description

    DropTableOption Drop table from SQL commands.4 = delete (default)8 = update only (files are not deleted)

    TransactionOption Transaction settings.1 = full transaction support (default).2 = disables all transactions.3 = disables locking of records during a select.

    Value Description

    Pdebug Runs the service in the foreground with /pdebug option (process debugger).0 = disabled (default).1 = enabled50 D3 NT 7.5 System Administration Guide

  • Manually Installed KeysFlashBasic

    These values can be created in the FlashBASIC registry key:

    Client

    These values can be created in the Client registry key (which is a subkey contained in the Rpc registry key):

    Value Description

    FileIO Input and output file names and directories. If only the file name is specified, the current directory is used. The format for this specification is:InputFileName ; OutputFileName {, size}; DebugInput ; DebugOutput {, size}The default value is (blank).

    SegmentBase Base address value (in hexadecimal) of a shared memory segment where the object code for rule modules are loaded. If set to 0, the system dynamically loads rule modules to a different address each time. The default value is 68000000.

    Value Name Description

    CallLimit Limits the number of concurrent calls a client can execute simultaneously to control the amount of load generated by a client. The default value is (blank).If value is not specified, then there is no limit.

    ConstructionTimeout Amount of time (in seconds) before attempted connection times out. The default value is 60.

    DefaultProtocols Specifies the network protocols used by clients when the Name Service is not available (comma delimited string). The default value is (blank).If not specified, all installed protocols are used.

    UseProtocols List of the only protocols that can be used when the Name Service is available (comma delimited string). Speeds up connections, since the client usually has a smaller subset of protocols that the server has. The default value is (blank).D3 NT 7.5 System Administration Guide 51

  • D3 Registry KeysTransactions

    These values can be created in the Transactions registry key (which would also need to be created):

    Value Description

    LogLevel Specifies the types of errors to log during a transaction.0xc000 (49152) = log errors and warnings only (default).0xe000 (57344) = log errors, warnings, and information.

    RmGuid Resource Manager GUID to register with DTC.Default value:

    LockTimeOut Specifies the dead lock avoidance timeout in milliseconds.The default value is 0 (no time-out).52 D3 NT 7.5 System Administration Guide

  • resizing of files at any time. The user can build a list of selected files to resize, and view information about individual files. Files can be resized manually regardless of Background Monitor status.Appendix A D3 File Sizer Utility

    Use the D3 File Sizer Utility to resize D3 NT or D3 UNIX files automatically or manually. The D3 File Sizer Utility uses the file-of-files, which is updated by the file-save command.

    The file-of-files contains statistical information for each file on the system. Whenever a file is created, restored, or deleted this file is updated.

    If you are already familiar with the D3 File Sizer Utility, see D3 File Sizer Utility Commands as a quick reference.

    Automatic Resizing The D3 File Sizer Utility automatically resizes D3 NT and UNIX platform database files through the use of the Background Monitor. At user specified intervals, the Background Monitor analyzes the size of files in: Specified account

    Individual files

    Entire system

    and automatically resizes them to ensure proper system performance.

    Manual Resizing The D3 File Sizer Utility also allows the manual D3 NT 7.5 System Administration Guide 53

  • D3 File Sizer UtilityResizing Files with the Background Monitor

    The Background Monitor tracks files on your database daily, weekly, or monthly (depending on how often you specify) to ensure that they are sized according to the default maximum ratio or according to individually set maximum ratios.The following options may be edited by the user: Wake-up date

    Wake-up time

    Check files (specifies how frequently the files are checked)

    Day of month

    Day of week

    Monitor

    Default Maximum Fill

    Default Action

    Resizing Individual Files

    Files can be resized on an individual basis at any time. To track the files being resized, build a list of selected files. Using the list of selected files, you can view individual file information, search the list for a specific character string, or resize a file.File statistics displayed within the various D3 File Sizer screens are regenerated by performing a file-save or account-save, running the D3 File Sizer Utility, then performing another file-save or account-save. Detailed instructions are provided in the remaining pages of this document (see Viewing File Information).54 D3 NT 7.5 System Administration Guide

  • Accessing the Background MonitorAccessing the Background MonitorAccess the Background Monitor from the Main Menu of the D3 File Sizer Utility. Use the Background Monitor for:

    Starting the Background Monitor

    Stopping the Background Monitor

    Displaying the Background Monitor Status

    Modifying the Wake-up Date and Time

    Modifying Background Monitor Options such as Maximum Fill Ratio, files to be monitored, and Wake-Up Time

    Starting the Background Monitor

    Files cannot be resized automatically unless the Background Monitor is running.

    To start the Background Monitor:

    1. Start the D3 File Sizer Utility.

    2. Type file-sizer at the TCL prompt.The Main Menu displays.

    NOTE Oversized files cannot be resized using the D3 File Sizer Utility.

    For Windows: Files residing in FSI:dm cannot be resized using the D3 File Sizer Utility.D3 NT 7.5 System Administration Guide 55

  • D3 File Sizer Utility3. Select option 1. Start Background Monitor from the Main Menu.

    This message displays.

    4. Do one of the following:

    Press y to start the Background Monitor.

    Press n to return to the Main Menu without starting the Background Monitor.

    Stopping the Background Monitor

    To disable file monitoring, stop the Background Monitor.

    To stop the Background Monitor:

    1. Select option 2. Stop Background Monitor from the Main Menu.

    This message displays.

    2. Do one of the following:

    Press y to stop the Background Monitor.

    Press n to return to the Main Menu without stopping the Background Monitor.

    Displaying the Background Monitor Status

    The Wake-up Date and Wake-up Time parameters can be modified when the Background Monitor Status is displayed.

    Several fields display in the Background Monitor Status screen. The number of fields that display depend on the status of the Background Monitor.

    Start Background Monitor. Confirm (/n)?

    Stop Background Monitor. Confirm (/n)?56 D3 NT 7.5 System Administration Guide

  • Accessing the Background MonitorTo display the Background Monitor Status:

    Select option 3. Background Monitor Status from the Main Menu.

    A Background Monitor Status screen displays.

    To exit the Background Monitor Status:

    Press Esc to exit the Background Monitor Status screen and return to the Main Menu without making any changes.

    To modify these options, see Modifying the Wake-up Date and Time.

    This table lists the Background Monitor status fields, including the parameter, editable fields, default values, and how it is generated.

    Parameter Editable Field

    Default Value and How it is Generated

    Status No Depends on the Background Monitor. Possible statuses include: RunningBackground Monitor is actively

    checking the files specified in Background Monitor Options.

    SleepingBackground Monitor is running but inactive, waiting until the time specified in Background Monitor Options to wake-up and check files.

    StoppingBackground Monitor is disabled.

    Start RequestedBackground Monitor is in the process of being started.

    Stop RequestedBackground Monitor is in the process of being stopped.

    Running on PIB

    No PIB number where the background Monitor is running.

    Wake-up Date

    Yes Date that the Background Monitor is scheduled to wake-up and check files.D3 NT 7.5 System Administration Guide 57

  • D3 File Sizer UtilityModifying the Wake-up Date and Time

    On the Background Monitor Status screen, only the Wake-up Date and the Wake-up Time can be adjusted.

    To modify the Wake-up Date and Time:

    1. Select option 3. Background Monitor Status from the Main Menu.

    2. Select the Wake-up Date field.

    3. Change the date, then press Enter.

    The date can be entered MM/DD/YY or DD/MM/YY (depending on the international date setting), where MM is the month, DD is the day, YY is the year. You must type the slash (/).

    4. Select the Wake-up Time field.

    5. Change the Wake-up Time.

    The time must be entered HH:MM, where HH is the hour, MM is the minutes. You must type the colon (:). Enter either military or standard time; however, AM or PM must be specified for standard time.

    This message displays.

    Wake-up Time

    Yes Time that the Background Monitor is scheduled to wake-up.

    Started By No Last user who started the Background Monitor.

    Started On No Date when the Background Monitor was last started.

    Started At No Time when the Background Monitor was last started.

    NOTE The Wake-up Da