DPS 6.2, w2k3, fills logfile when disabling monitoring-inactivity-timeout

When disabling the setting "Poll Unused Connections to Keep them Active" using DSCC the value for
connectionInactivityTimeoutInSec / monitoring-inactivity-timeout will be set to -1 in the configuration file.
This causes the LDAP Proxy Server to continuously log the line:
BACKEND    - WARN  - Activity on connections for LDAP server x.x.x.x:389/ takes longer than configured.is there any option to disable the whole "poll" feature?
thanks
.andi

Hi andi,
I cannot reproduce this problem but if -1 value causes the problem, you can either manually remove the connectionInactivityTimeoutInSec:-1 line from the configuration file and restart the proxy or use dpconf set-ldap-data-source-prop monitoring-inactivity-timeout w/o specifying any value (this should remove the attr).
-Sylvain

Similar Messages

  • Does ACE send a RST packet when it reach inactivity timeout?

    Hi experts
    I have some questions about ace's behavier.
    1st one is, Does ACE send a RST packet when it reach to inactivity timeout?
    2nd, Does half-closed timeout works properly with "no normalization"?
    3rd, How does ACE treat the packets there is no flows in conn table? Drop or forwarding?
    Thanks

    Hi Kilsoo,
    1st one is, Does ACE send a RST packet when it reach to inactivity timeout?
    ----yes, the ACE is going to send a RST if the client or server tries to do something over a connection that was already timed out
    3rd, How does ACE treat the packets there is no flows in conn table? Drop or forwarding?
    drops the connection
    Let me do some research for your second question
    Cesar R
    ANS Team

  • Hi...lags animations in games and messages and album pic..when disable assistive touch,it's true and fix..please release update to fix this in ios 7.1..i need assistive touch and fast game and animation booth!!

    Hi...lags animations in games and messages and album pic..when disable assistive touch,it's true and fix..please release update to fix this in ios 7.1..i need assistive touch and fast game and animation booth!!

    No Apple here, user to user forum.
    I will not be releasing any version of iOS ever.

  • The operation can't be completed because you don't have permission to access some of the items. ive moved these files from my sd card to the trash, when i take out the sd card the trash empties but then fills up when i put it back in, it wont empty.

    The operation can’t be completed because you don’t have permission to access some of the items. ive moved these files from my sd card to the trash, when i take out the sd card the trash empties but then fills up when i put it back in, it wont empty.

    In the Finder, press the key combination shift-command-C, or select
              Go ▹ Computer
    from the menu bar. A window will open showing all mounted volumes. Select the one in question and open the Info window. What is shown as the Format in the General section?

  • Dps file automatically opening multiple times when working on another file in the same folio?

    dps file automatically opening multiple times when working on another file in the same folio? Can anybody please help

    Can you try resetting your preferences first and see if that helps - see Troubleshooting 101: Replace, or "trash" your InDesign preferences

  • 11.0.0.4 Update still promting for update at clock even when disabled via GPO customization wizard

    I have custiomized the Adobe Reader 11.0.0.4 msi to disable any updating feature available . This is the same as the previous versions which have worked faultlessly. This time when i have deployed 11.0.0.4 it does install on the windows machine but still prompts beside the clock with an icon and message saying would you like to install the update? if i click it it then fails as its already installed. i do not want any user to see this message especaily when that version is already running on the machine! Please see below for further informaiton, Appriciate any help resolving this issue.
    Server software:
    Operating system: Windows server 2008 R2
    Client software:
    Operating system: windows 7 64 x pro
    Service Packs: SP1
    Adobe product: Adobe reader 11.0.0.4
    Are the system requirements met? yes
    Problem details:
    Type of problem: update icon and message still showing at clock even when disabled by customized GPO.
    Error message (if any): no erro just popping up!
    Logged on as administrator or user? both but deployed via GPO deployment
    Can you reproduce the problem when you test the problem on the server? yes i can repude on several PC's
    Deployment details
    If you are having deployment problems, also record the following:
    Base version   11.0.0.0
    Any patching/chaining? 11.0.0.1, 11.0.0.2, 11.0.0.3, gpo deployed each version now on 11.0.0.4
    Using MSI or EXE? MSI with MST file (MSI from 11.0.0.0 andmerged with Patch 11.0.0.4)
    Using the Customization Wizard? YES
    Deployment method (AIP, GPO, SCCM, ARD?) GPO
    Installing over other products? YES previous versions of adobe reader
    Did you attempt to install any third-party scripts or application  programming interfaces (APIs) with Acrobat during deployment? If so,  does the problem reside with these elements? (To find out, create a test  package containing only Acrobat.) no
    How did you create the package? customisation wizard Adobe 11.
    Does the problem occur when you install the application from a DVD?  If so, does the problem occur when you copy the contents of the DVD to a  local or network drive? n/a

    fyi
    Some feedback in SR 3-6322025251 ...
    After some on-going discussions with Product Managers, they don't believe this is expected behavior in the 3 questions (q4), (q5) and (q6).
    I have so created 3 new bugs for Development evaluation as no answer or known issue found.
    I have created a spin-off SR for each question/bug as per our policy we handle only one issue/bug per SR.
    You can follow each question/bug progress in the following SRs :
    - (q4) Is it intended behavior to have updated version columns on rows that have not really been updated (as observed in step (sc2-g) and (sc3-g))?
    SR 3-6838483321: Entity attribute with change Indicator and version history gets updated even if row unmodified in UI
    Bug 16381918 - OBJECT VERSION ATTRIBUTE INCREMENTED EVEN IF ROW UNMODIFIED IN UI
    - (q5) How can the NullPointerException (in step (sc2-h)) be explained/avoided?
    SR 3-6838483348: NPE in oracle.adf.model.binding.DCIteratorBinding.executeQueryIfNeeded
    Bug 16382070 - NPE IN ORACLE.ADF.MODEL.BINDING.DCITERATORBINDING.EXECUTEQUERYIFNEEDED
    - (q6) Why does the message in step (sc3-h) mention 'primary key oracle.jbo.Key[10 ]' while the row that really changed has Deptno 20?
    SR 3-6838483413: Incorrect primary key value from oracle.jbo.RowInconsistentException
    Bug 16382246 - INCORRECT PRIMARY KEY VALUE FROM ORACLE.JBO.ROWINCONSISTENTEXCEPTION
    Each bug has been published in MOS and are pending Development triage and evaluation.
    On My Oracle Support, I have been able to find bug 16381918, bug 16382070 and bug 16382246.
    regards
    Jan

  • "insufficient RAM to fill" message when creating panoramas - 16 GB on my computer?[was: RAM]

    Why am I getting "insufficient RAM to fill" message when creating panoramas when I have 16 GB on my computer?

    You don't say which version of PSE or which operating system, but except for PSE 12/mac, all versions of PSE are 32 bit programs, which means they can only use a maximum of about 3 GB of ram, no matter how much you have in your system. You can try going to the editor>preferences>performance and upping the percentage available for PSE.

  • HT1212 how to unlock ipod touch when disabled and says connect to itunes

    how to unlock ipod touch when disabled and says connect to itunes?

    The answer is in the article you asked this question from: http://support.apple.com/kb/HT1212

  • Language Monitors and Bi-directional Printing: What functionality is lost when disabling? What else uses them?

    Server OS: Windows 2008 R2 Standard
    Function: Primary Domain Controller and Print Server
    Clients: All are running Windows 7 Pro 64-Bit SP1
    We're considering disabling the HP Universal Print Driver Language Monitor and in-turn Bi-directional Printing due to potential server spooler instabilities, before we do this the IT Manager wants to be sure:
    1. What functionality is lost when disabling Language Monitors and Bi-directional Printing?
    2. What else uses Language Monitors and Bi-directional Printing them? In other words what may break?
    3. What specifically do Language Monitors and Bi-directional Printing provide?
    Thanks

    Alan (or anyone else):
    We're testing disabling the language monitor/bidirectional printing for one particular printer.
    Can I confirm this is the procedure for disabling a particular print queue's Language Monitor and Bidirectional Printing? -
    1. Locate the relevant Language Monitor registry key in: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print\Monitors
    Either delete or rename the registry key (so it cannot be found), in my case: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print\Monitors\HPMLM121
    I renamed it to have the date at the end (HPMLM121_2015-01-29).
    2. Inside the above registry key is a DLL file mentioned under the DRIVER reference. In my case it's called: hpmlm121.dll.
    I searched the entire C drive on the server and this was only found in C:\Windows\System32. I moved this elsewhere out of C:\Windows and also renamed the DLL too.
    Therefore preventing Windows from being able to find/use it.
    3. I then unticked Bidirectional Printing Support in the Printer Properties Ports tab of the printer in question.
    4. Lastly either restart the server (or stop/restart the Spooler service).
    I've done all this and the HP Print Notifications for Replace Cartridge etc... are still active.
    Any idea why this is?
    Thanks

  • Ipda mini unable to restore when disabled due to find my iPad.

    My daughter has forgotten her password and disabled her mini ipad (iOS 7).  I have attempted to restore but get the message that "find my iphone needs to be turned off to restore" on attempting (can't when disabled).  I've gone to my iCloud account and removed the device.  Still has same error message whn I atempt to restore again in itunes.
    Has anyone else had this issue and how do i fix it? Have turned all devices on and off.

    Force iPad into Recovery Mode. Follow step 1 to 5 very closely.
    http://support.apple.com/kb/HT1808
    Note: You may have to repeat the above a few times.

  • ORA-01291:missing logfile when FlashingBack a Primary DB in logical standby

    OS: Solaris 10 and Windows vista
    Oracle version : 10.2.0.4.0 Enterprise Edition and 10.2.0.3.0 Enterprise Edition
    We are getting ORA-01291: missing logfile when FlashingBack a failed Primary DB into logical standby
    We are following Below procedure for failover and flashback in logical standby.
    Primary and standby database name is as below.
    primary db_name primdb
    standby db_name logicdb
    failover
    From primdb:
    shut abort
    From logicdb:
    select applied_scn,newest_scn from dba_logstdby_progress;
    alter database stop logical standby apply;
    alter database activate logical standby database;
    Flashing Back a Failed Primary Database into a Logical Standby Database
    We are following instructions from below link.
    http://download.oracle.com/docs/cd/B19306_01/server.102/b14239/scenarios.htm#i1050060
    SYS@logicdb> SELECT APPLIED_SCN AS FLASHBACK_SCN FROM V$LOGSTDBY_PROGRESS;
    FLASHBACK_SCN
    302330
    1 row selected.
    SYS@logicdb> SELECT file_NAME FROM DBA_LOGSTDBY_LOG WHERE NEXT_CHANGE# > (SELECT VALUE FROM DBA_LOGSTDBY_PARAMETERS
              WHERE NAME = 'STANDBY_BECAME_PRIMARY_SCN') AND FIRST_CHANGE#<=302330;
    FILE_NAME
    /logs/app/oracle/flash_recovery_area/LOGICDB/archivelog2/logicdb_1_12_729695607.arc
    Note: We have copied above mentioned file to primary archive destination i.e. /logs/app/oracle/flash_recovery_area/PRIMDB/archivelog.
    SYS@primdb> startup mount
    ORACLE instance started.
    Total System Global Area 1073741824 bytes
    Fixed Size 2046056 bytes
    Variable Size 264243096 bytes
    Database Buffers 801112064 bytes
    Redo Buffers 6340608 bytes
    Database mounted.
    SYS@primdb> FLASHBACK DATABASE TO SCN 302330;
    Flashback complete.
    SYS@primdb> ALTER DATABASE OPEN RESETLOGS;
    Database altered.
    SYS@primdb> ALTER DATABASE START LOGICAL STANDBY APPLY NEW PRIMARY logicdb;
    Database altered.
    SYS@primdb> select type,high_scn,status from v$logstdby;
    TYPE HIGH_SCN
    STATUS
    COORDINATOR
    ORA-01291: missing logfile
    Primary database init.ora parameters are as below
    *.db_file_name_convert=('/export/oracle/oradata/primdb/','/export/oracle/oradata/logicdb/')
    *.db_name='primdb'
    *.instance_name=primdb
    *.db_unique_name=primdb
    *.service_names=primdb
    *.db_recovery_file_dest='/logs/app/oracle/flash_recovery_area'
    *.fal_client='LOGICDB'
    *.fal_server='PRIMDB'
    *.log_archive_dest_1='LOCATION=/logs/app/oracle/flash_recovery_area/PRIMDB/archivelog/ VALID_FOR=(ONLINE_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=primdb'
    *.log_archive_dest_2='SERVICE=logicdb LGWR ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=logicdb'
    *.log_archive_dest_3='LOCATION=/logs/app/oracle/flash_recovery_area/PRIMDB/archivelog2/ VALID_FOR=(STANDBY_LOGFILES,STANDBY_ROLES) DB_UNIQUE_NAME=primdb'
    *.log_archive_dest_state_1='ENABLE'
    *.log_archive_dest_state_2='ENABLE'
    *.log_archive_dest_state_3='DEFER'
    *.log_archive_format='primdb_%t_%s_%r.arc'
    *.log_archive_max_processes=4
    *.log_file_name_convert=('/export/oracle/oradata/primdb/','/export/oracle/oradata/logicdb/')
    *.standby_file_management='AUTO'
    *.log_archive_config='dg_config=(primdb,logicdb)'
    Standby database init.ora parameters are as below
    *.db_file_name_convert=('/export/oracle/oradata/primdb/','/export/oracle/oradata/logicdb/')
    *.db_name='logicdb'
    *.instance_name=logicdb
    *.db_unique_name=logicdb
    *.service_names=logicdb
    *.db_recovery_file_dest='/logs/app/oracle/flash_recovery_area'
    *.fal_client='LOGICDB'
    *.fal_server='PRIMDB'
    *.log_archive_dest_1='LOCATION=/logs/app/oracle/flash_recovery_area/LOGICDB/archivelog/ VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=logicdb'
    *.log_archive_dest_2='SERVICE=primdb LGWR ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=primdb'
    *.log_archive_dest_3='LOCATION=/logs/app/oracle/flash_recovery_area/LOGICDB/archivelog2/ VALID_FOR=(STANDBY_LOGFILES,STANDBY_ROLES) DB_UNIQUE_NAME=logicdb'
    *.log_archive_dest_state_1='ENABLE'
    *.log_archive_dest_state_2='DEFER'
    *.log_archive_dest_state_2='ENABLE'
    *.log_archive_format='logicdb_%t_%s_%r.arc'
    *.log_archive_max_processes=4
    *.log_file_name_convert=('/export/oracle/oradata/primdb/','/export/oracle/oradata/logicdb/')
    *.log_archive_config='dg_config=(primdb,logicdb)'

    Hi ,
    The error shows it is waiting for the Logfile. The Integrated extract mainly needs of the availability of two things.
    1. Archivelogs.
    2. Trail Files.
    Both should be retained to the needed / required level.
    Please execute the below query and check the status of the Extract / Capture process.
    The below query displays the information of each capture process in a database.,
    COLUMN CAPTURE_NAME HEADING 'Capture|Name' FORMAT A7
    COLUMN PROCESS_NAME HEADING 'Capture|Process|Number' FORMAT A7
    COLUMN SID HEADING 'Session|ID' FORMAT 9999
    COLUMN SERIAL# HEADING 'Session|Serial|Number' FORMAT 9999
    COLUMN STATE HEADING 'State' FORMAT A20
    COLUMN TOTAL_MESSAGES_CAPTURED HEADING 'Redo|Entries|Evaluated|In Detail' FORMAT 9999999
    COLUMN TOTAL_MESSAGES_ENQUEUED HEADING 'Total|LCRs|Enqueued' FORMAT 9999999999
    SELECT c.CAPTURE_NAME,
           SUBSTR(s.PROGRAM,INSTR(s.PROGRAM,'(')+1,4) PROCESS_NAME,
           c.SID,
           c.SERIAL#,
           c.STATE,
           c.TOTAL_MESSAGES_CAPTURED,
           c.TOTAL_MESSAGES_ENQUEUED
      FROM V$STREAMS_CAPTURE c, V$SESSION s
      WHERE c.SID = s.SID AND
            c.SERIAL# = s.SERIAL#;
    Also run this query to check, if the capture is waiting for which logfile.,
    COLUMN CONSUMER_NAME HEADING 'Capture|Process|Name' FORMAT A15
    COLUMN SOURCE_DATABASE HEADING 'Source|Database' FORMAT A10
    COLUMN SEQUENCE# HEADING 'Sequence|Number' FORMAT 99999
    COLUMN NAME HEADING 'Required|Archived Redo Log|File Name' FORMAT A40
    SELECT r.CONSUMER_NAME,
           r.SOURCE_DATABASE,
           r.SEQUENCE#,
           r.NAME
      FROM DBA_REGISTERED_ARCHIVED_LOG r, DBA_CAPTURE c
      WHERE r.CONSUMER_NAME =  c.CAPTURE_NAME AND
            r.NEXT_SCN      >= c.REQUIRED_CHECKPOINT_SCN;
    The above query clearly shows for which logfile the Extract / Capture process is waiting. Check if that logfile is available in your system.
    Regards,
    Veera

  • [AS, CS2 / CS3] Get Fill Color When Nothing is Selected (defaults? preferences?)

    Hi,
    where can I find the active color, which is active (border and fill color), when nothing is selected.
    E.g. I can get the active styles, when nothing is selected with:
    applied character style of text defaults
    and
    applied paragraph style of text defaults.
    Where nac I find the equivalent for fill and border color?
    Thanks
    Tobias

    Thanks, that was for CS3. Where can I get that in CS2?
    I searched the dictionary of document and application, but got no glue ...
    Thanks
    Tobias

  • Component and Object are not being filled automatically when filling IBase

    Hello all,
    When filling the Ibase number in a Service Order (Reference Objects), the component and the object ID are not deing filled automatically. But if I fill the component instead of the IBase ID, the Ibase and the object are being filled.
    Can anyone help me with this issue, please? I would need the component and the object being filled automatically when entering the Ibase number.
    Thank you and Regards.

    Hi,
    Do you have the component assign to a client?
    Best regards,
    Rui Mariano

  • Skip Navigation applying for all pages when disable styles.

    Hi All,
    I am using APEX 4.0.
    I was working on 508 standards for the application, I am having problem seeing "Skip Navigation" link when disable styles through browser (View-style-no style).
    I was using "One Level Tabs" template through out the application, I have placed the following code under BODY section
    a href="#startcontent" a href="#startcontent" <img src="" height="1" width="1" border="0" alt="Skip Navigation" />
    a name="startcontent" /a
    when I disable styles the link supposed to show, but right now its not doing that.
    Any suggessions , I was also using Breadcrumb Menu Template.
    Thanks in Advance.
    Edited by: Suma001 on Jul 2, 2012 10:13 AM
    Edited by: Suma001 on Jul 2, 2012 10:14 AM
    Edited by: Suma001 on Jul 2, 2012 10:14 AM

    It worked with this syntax in addition to existing code.
    a href="#startcontent" style="display:none" Skip Navigation /a
    But not sure why it worked for other theme.
    Thank you for the help.
    Edited by: Suma001 on Jul 6, 2012 7:48 AM

  • How to bridge (fill) gaps when converting a 2006 geometry  into a 2002 geometry

    Is it at all possible to bridge (fill) gaps when converting a 2006 geometry into a single 2002 geometry. I have a solution for the conversion from 2006 to 2002 provided by BHall but upon further investigation investigation of my dataset some of the multi line polygons have gaps which I need to fill and I am not sure how to go about this.
    Here is a simple example of what I am trying to achieve
    Before
    SELECT (sdo_geometry(2006, 81989, NULL,
                    mdsys.sdo_elem_info_array(1,2,1,5,2,1,9,2,1,13,2,1),
                    mdsys.sdo_ordinate_array(16,0.999,16.998,-0.001,17.253,-0.001,18.003,0.999,18.003,0.999,19.001,0.999,19.001,0.999,19.999,-0.001)))
      FROM dual
    After
    SELECT (sdo_geometry(2006, 81989,NULL,
                   mdsys.sdo_elem_info_array(1,2,1),
                   mdsys.sdo_ordinate_array(16,0.999,17.253,-0.001,18.003,0.999,19.001,0.999,19.999,-0.001))) FROM dual    
    Thanks in advance

    Okay Roché,
    You might need to break this problem down into smaller parts for the forum.  All your examples show the gap being replaced by a single vertice - e.g. you want to "snap" the gap together.  I'd suggest this is just complicating your question.  Once the gap is filled (with a line) then you can run SDO_UTIL.REMOVE_DUPLICATE_VERTICES afterwards to remove the new line if its below your tolerance.  I think that Bryan's code wrapped in remove duplicate vertices will solve your second scenario.  But overall I think it would be helpful to focus just on the filling and leave the snapping for a follow-up question.
    So back to scenario #1, below is some code I wrote a while back that might do what you want or at least get you started.     Note that the input must be a multistring and the multistring cannot be "spaghetti".  In other words each line in the multistring must be disjoint or at most touch other lines only at endpoints. The goal is to sift through the lines and create a single linestring using the smallest gaps.  It's not subtle and will indeed produce bad geometries if the inputs are setup in an impossible manner.  There are also some rare geodetic bugs with SDO_GEOM.RELATE that crop up.  So you'll note I test both distance and relate in some places.  That's intentional though kind of dumb.
    Hopefully this helps.  If you improve the code please shoot a copy back to me.
    Cheers,
    Paul   
    CREATE OR REPLACE PACKAGE dz_gap_fill
    AUTHID CURRENT_USER
    AS
       FUNCTION linear_gap_filler(
           p_input            IN  MDSYS.SDO_GEOMETRY
          ,p_tolerance        IN  NUMBER DEFAULT 0.05
       ) RETURN MDSYS.SDO_GEOMETRY;
    END dz_gap_fill;
    CREATE OR REPLACE PACKAGE BODY dz_gap_fill
    AS
       FUNCTION fast_point(
           p_x             IN  NUMBER
          ,p_y             IN  NUMBER
          ,p_z             IN  NUMBER DEFAULT NULL
          ,p_m             IN  NUMBER DEFAULT NULL
          ,p_srid          IN  NUMBER DEFAULT 8265
       ) RETURN MDSYS.SDO_GEOMETRY
       AS
       BEGIN
          -- Step 10
          -- Check over incoming parameters
          IF p_x IS NULL
          OR p_y IS NULL
          THEN
             RAISE_APPLICATION_ERROR(-20001,'x and y cannot be NULL');
          END IF;
          -- Step 20
          -- Do the simplest solution first
          IF  p_z IS NULL
          AND p_m IS NULL
          THEN
             RETURN SDO_GEOMETRY(
                 2001
                ,p_srid
                ,SDO_POINT_TYPE(
                     p_x
                    ,p_y
                    ,NULL
                ,NULL
                ,NULL
          END IF;
          -- Step 30
          -- Do the other wilder choices
          IF p_z IS NULL
          AND p_m IS NOT NULL
          THEN
             RETURN SDO_GEOMETRY(
                 3301
                ,p_srid
                ,SDO_POINT_TYPE(
                     p_x
                    ,p_y
                    ,p_m
                ,NULL
                ,NULL
          ELSIF p_z IS NOT NULL
          AND   p_m IS NULL
          THEN
             RETURN SDO_GEOMETRY(
                 3001
                ,p_srid
                ,SDO_POINT_TYPE(
                     p_x
                    ,p_y
                    ,p_z
                ,NULL
                ,NULL
          ELSIF p_z IS NOT NULL
          AND   p_m IS NOT NULL
          THEN
             RETURN SDO_GEOMETRY(
                 4401
                ,p_srid
                ,NULL
                ,SDO_ELEM_INFO_ARRAY(1,1,1)
                ,SDO_ORDINATE_ARRAY(p_x,p_y,p_z,p_m)
          ELSE
             RAISE_APPLICATION_ERROR(-20001,'ERR!');
          END IF;
       END fast_point;
       FUNCTION get_start_point(
          p_input        IN  MDSYS.SDO_GEOMETRY
       ) RETURN MDSYS.SDO_GEOMETRY
       AS
          int_dims PLS_INTEGER;
          int_gtyp PLS_INTEGER;
          int_lrs  PLS_INTEGER;
       BEGIN
          -- Step 10
          -- Check over incoming parameters
          IF p_input IS NULL
          THEN
             RETURN NULL;
          END IF;
          -- Step 20
          -- Gather information about the geometry
          int_dims := p_input.get_dims();
          int_gtyp := p_input.get_gtype();
          int_lrs  := p_input.get_lrs_dim();
          -- Step 30
          -- Handle point and multipoint inputs
          IF int_gtyp = 1
          THEN
             RETURN p_input;
          ELSIF int_gtyp = 5
          THEN
             RETURN SDO_UTIL.EXTRACT(p_input,1);
          END IF;
          -- Step 40
          -- Return results
          IF int_dims = 2
          THEN
             RETURN fast_point(
                 p_input.SDO_ORDINATES(1)
                ,p_input.SDO_ORDINATES(2)
                ,NULL
                ,NULL
                ,p_input.SDO_SRID
          ELSIF  int_dims = 3
          AND int_lrs = 3
          THEN
             RETURN fast_point(
                 p_input.SDO_ORDINATES(1)
                ,p_input.SDO_ORDINATES(2)
                ,NULL
                ,p_input.SDO_ORDINATES(3)
                ,p_input.SDO_SRID
          ELSIF  int_dims = 3
          AND int_lrs = 0
          THEN
             RETURN fast_point(
                 p_input.SDO_ORDINATES(1)
                ,p_input.SDO_ORDINATES(2)
                ,p_input.SDO_ORDINATES(3)
                ,NULL
                ,p_input.SDO_SRID
          ELSIF  int_dims = 4
          AND int_lrs IN (4,0)
          THEN
             RETURN fast_point(
                 p_input.SDO_ORDINATES(1)
                ,p_input.SDO_ORDINATES(2)
                ,p_input.SDO_ORDINATES(3)
                ,p_input.SDO_ORDINATES(4)
                ,p_input.SDO_SRID
          ELSIF  int_dims = 4
          AND int_lrs = 3
          THEN
             RETURN fast_point(
                 p_input.SDO_ORDINATES(1)
                ,p_input.SDO_ORDINATES(2)
                ,p_input.SDO_ORDINATES(4)
                ,p_input.SDO_ORDINATES(3)
                ,p_input.SDO_SRID
          ELSE
             RAISE_APPLICATION_ERROR(-20001,'ERR!');
          END IF;
       END get_start_point;
       FUNCTION get_end_point(
          p_input        IN  MDSYS.SDO_GEOMETRY
       ) RETURN MDSYS.SDO_GEOMETRY
       AS
          int_dims PLS_INTEGER;
          int_gtyp PLS_INTEGER;
          int_lrs  PLS_INTEGER;
          int_len  PLS_INTEGER;
       BEGIN
          -- Step 10
          -- Check over incoming parameters
          IF p_input IS NULL
          THEN
             RETURN NULL;
          END IF;
          -- Step 20
          -- Gather information about the geometry
          int_dims := p_input.get_dims();
          int_gtyp := p_input.get_gtype();
          int_lrs  := p_input.get_lrs_dim();
          int_len  := p_input.SDO_ORDINATES.COUNT();
          -- Step 30
          -- Handle point and multipoint inputs
          IF int_gtyp = 1
          THEN
             RETURN p_input;
          ELSIF int_gtyp = 5
          THEN
             RETURN SDO_UTIL.EXTRACT(
                 p_input
                ,SDO_UTIL.GETNUMELEM(p_input)
          END IF;
          -- Step 40
          -- Return results
          IF int_dims = 2
          THEN
             RETURN fast_point(
                 p_input.SDO_ORDINATES(int_len - 1)
                ,p_input.SDO_ORDINATES(int_len)
                ,NULL
                ,NULL
                ,p_input.SDO_SRID
          ELSIF  int_dims = 3
          AND int_lrs = 3
          THEN
             RETURN fast_point(
                 p_input.SDO_ORDINATES(int_len - 2)
                ,p_input.SDO_ORDINATES(int_len - 1)
                ,NULL
                ,p_input.SDO_ORDINATES(int_len)
                ,p_input.SDO_SRID
          ELSIF  int_dims = 3
          AND int_lrs = 0
          THEN
             RETURN fast_point(
                 p_input.SDO_ORDINATES(int_len - 2)
                ,p_input.SDO_ORDINATES(int_len - 1)
                ,p_input.SDO_ORDINATES(int_len)
                ,NULL
                ,p_input.SDO_SRID
          ELSIF  int_dims = 4
          AND int_lrs IN (4,0)
          THEN
             RETURN fast_point(
                 p_input.SDO_ORDINATES(int_len - 3)
                ,p_input.SDO_ORDINATES(int_len - 2)
                ,p_input.SDO_ORDINATES(int_len - 1)
                ,p_input.SDO_ORDINATES(int_len)
                ,p_input.SDO_SRID
          ELSIF  int_dims = 4
          AND int_lrs = 3
          THEN
             RETURN fast_point(
                 p_input.SDO_ORDINATES(int_len - 3)
                ,p_input.SDO_ORDINATES(int_len - 2)
                ,p_input.SDO_ORDINATES(int_len)
                ,p_input.SDO_ORDINATES(int_len - 1)
                ,p_input.SDO_SRID
          ELSE
             RAISE_APPLICATION_ERROR(-20001,'ERR!');
          END IF;
       END get_end_point;
       FUNCTION is_spaghetti(
           p_input             IN  MDSYS.SDO_GEOMETRY
          ,p_tolerance         IN  NUMBER DEFAULT 0.05
       ) RETURN VARCHAR2
       AS
          num_tolerance    NUMBER := p_tolerance;
          ary_strings      MDSYS.SDO_GEOMETRY_ARRAY := MDSYS.SDO_GEOMETRY_ARRAY();
          ary_starts       MDSYS.SDO_GEOMETRY_ARRAY := MDSYS.SDO_GEOMETRY_ARRAY();
          ary_ends         MDSYS.SDO_GEOMETRY_ARRAY := MDSYS.SDO_GEOMETRY_ARRAY();
          int_count        PLS_INTEGER;
          ary_start_count  MDSYS.SDO_NUMBER_ARRAY := MDSYS.SDO_NUMBER_ARRAY();
          ary_end_count    MDSYS.SDO_NUMBER_ARRAY := MDSYS.SDO_NUMBER_ARRAY();
          ary_inside_count MDSYS.SDO_NUMBER_ARRAY := MDSYS.SDO_NUMBER_ARRAY();
       BEGIN
          -- Step 10
          -- Check over incoming parameters
          IF p_input IS NULL
          THEN
             RETURN NULL;
          ELSIF p_input.get_gtype = 2
          THEN
             RETURN 'FALSE';
          ELSIF p_input.get_gtype <> 6
          THEN
             RAISE_APPLICATION_ERROR(-20001,'input gtype must be 2 or 6');
          END IF;
          IF num_tolerance IS NULL
          THEN
             num_tolerance := 0.05;
          END IF;
          -- Step 20
          -- Break multistring into single linestrings with nodes
          int_count := SDO_UTIL.GETNUMELEM(p_input);
          ary_strings.EXTEND(int_count);
          ary_starts.EXTEND(int_count);
          ary_ends.EXTEND(int_count);
          ary_start_count.EXTEND(int_count);
          ary_end_count.EXTEND(int_count);
          ary_inside_count.EXTEND(int_count);
          FOR i IN 1 .. int_count
          LOOP
             ary_strings(i) := SDO_UTIL.EXTRACT(p_input,i);
             ary_starts(i)  := get_start_point(ary_strings(i));
             ary_ends(i)    := get_end_point(ary_strings(i));
          END LOOP;
          -- Step 30
          -- Loop through and count the nodes connections
          FOR i IN 1 .. int_count
          LOOP
             ary_start_count(i)  := 0;
             ary_end_count(i)    := 0;
             ary_inside_count(i) := 0;
             FOR j IN 1 .. int_count
             LOOP
                IF i != j
                THEN
                   IF SDO_GEOM.RELATE(
                      ary_starts(i),
                      'DETERMINE',
                      ary_strings(j),
                      num_tolerance
                   ) IN ('TOUCH','CONTAINS','COVERS','ON')
                   THEN
                      ary_start_count(i) := ary_start_count(i) + 1;
                   ELSIF SDO_GEOM.RELATE(
                      ary_ends(i),
                      'DETERMINE',
                      ary_strings(j),
                      num_tolerance
                   ) IN ('TOUCH','CONTAINS','COVERS','ON')
                   THEN
                      ary_end_count(i) := ary_end_count(i) + 1;
                   ELSIF SDO_GEOM.RELATE(
                      ary_strings(i),
                      'DETERMINE',
                      ary_strings(j),
                      num_tolerance
                   ) IN ('TOUCH','CONTAINS','COVERS','OVERLAPBYINTERSECT')
                   THEN
                      ary_inside_count(i) := ary_inside_count(i) + 1;
                   END IF;
                END IF;
             END LOOP;
             IF ary_start_count(i) > 1
             OR ary_end_count(i) > 1
             OR ary_inside_count(i) > 0
             THEN
                RETURN 'TRUE';
             END IF;
          END LOOP;
          RETURN 'FALSE';
       END is_spaghetti;
       FUNCTION points2segment(
           p_point_one              IN  MDSYS.SDO_POINT_TYPE
          ,p_point_two              IN  MDSYS.SDO_POINT_TYPE
          ,p_srid                   IN  NUMBER
       ) RETURN MDSYS.SDO_GEOMETRY
       AS
       BEGIN
          IF ( p_point_one.Z IS NULL AND p_point_two.Z IS NOT NULL )
          OR ( p_point_one.Z IS NOT NULL AND p_point_two.Z IS NULL )
          THEN
             RAISE_APPLICATION_ERROR(
                -20001,
                'both points must have the same number of dimensions, point_one Z is ' ||
                NVL(TO_CHAR(p_point_one.Z),'') ||
                ' and point_two Z is ' ||
                NVL(TO_CHAR(p_point_two.Z),'')
          END IF;
          IF p_point_one.Z IS NULL
          THEN
             RETURN SDO_GEOMETRY(
                 2002
                ,p_srid
                ,NULL
                ,SDO_ELEM_INFO_ARRAY(1,2,1)
                ,SDO_ORDINATE_ARRAY(p_point_one.X,p_point_one.Y,p_point_two.X,p_point_two.Y)
          ELSE
             RETURN SDO_GEOMETRY(
                 3002
                ,p_srid
                ,NULL
                ,SDO_ELEM_INFO_ARRAY(1,2,1)
                ,SDO_ORDINATE_ARRAY(p_point_one.X,p_point_one.Y,p_point_one.Z,p_point_two.X,p_point_two.Y,p_point_two.Z)
          END IF;
       END points2segment;
       FUNCTION points2segment(
           p_point_one              IN  MDSYS.SDO_GEOMETRY
          ,p_point_two              IN  MDSYS.SDO_GEOMETRY
       ) RETURN MDSYS.SDO_GEOMETRY
       AS
          int_gtype1 PLS_INTEGER;
          int_dims1  PLS_INTEGER;
          int_gtype2 PLS_INTEGER;
          int_dims2  PLS_INTEGER;
          point_one  MDSYS.SDO_POINT_TYPE;
          point_two  MDSYS.SDO_POINT_TYPE;
       BEGIN
          int_gtype1 := p_point_one.get_gtype();
          int_dims1  := p_point_one.get_dims();
          int_gtype2 := p_point_two.get_gtype();
          int_dims2  := p_point_two.get_dims();
          IF  int_gtype1 = 1
          AND int_gtype2 = 1
          AND int_dims1  = int_dims2
          AND p_point_one.SDO_SRID = p_point_two.SDO_SRID
          THEN
             NULL;  -- Good
          ELSE
             RAISE_APPLICATION_ERROR(
                 -20001
                ,'both point objects must be points and have the same number of dimensions and SRIDs'
          END IF;
          IF int_dims1 = 4
          THEN
             RETURN SDO_GEOMETRY(
                 4402
                ,p_point_one.SDO_SRID
                ,NULL
                ,SDO_ELEM_INFO_ARRAY(1,2,1)
                ,SDO_ORDINATE_ARRAY(
                     p_point_one.SDO_ORDINATES(1)
                    ,p_point_one.SDO_ORDINATES(2)
                    ,p_point_one.SDO_ORDINATES(3)
                    ,p_point_one.SDO_ORDINATES(4)
                    ,p_point_two.SDO_ORDINATES(1)
                    ,p_point_two.SDO_ORDINATES(2)
                    ,p_point_two.SDO_ORDINATES(3)
                    ,p_point_two.SDO_ORDINATES(4)
          ELSE
             -- Use the sdo_point_type method for the rest
             IF p_point_one.SDO_POINT IS NOT NULL
             THEN
                point_one := p_point_one.SDO_POINT;
             ELSE
                IF int_dims1 = 3
                THEN
                   point_one := SDO_POINT_TYPE(
                       p_point_one.SDO_ORDINATES(1)
                      ,p_point_one.SDO_ORDINATES(2)
                      ,p_point_one.SDO_ORDINATES(3)
                ELSE
                   point_one := SDO_POINT_TYPE(
                       p_point_one.SDO_ORDINATES(1)
                      ,p_point_one.SDO_ORDINATES(2)
                      ,NULL
                END IF;
             END IF;
             IF p_point_two.SDO_POINT IS NOT NULL
             THEN
                point_two := p_point_two.SDO_POINT;
             ELSE
                IF int_dims1 = 3
                THEN
                   point_two := SDO_POINT_TYPE(
                        p_point_two.SDO_ORDINATES(1)
                       ,p_point_two.SDO_ORDINATES(2)
                       ,p_point_two.SDO_ORDINATES(3)
                ELSE
                   point_two := SDO_POINT_TYPE(
                       p_point_two.SDO_ORDINATES(1)
                      ,p_point_two.SDO_ORDINATES(2)
                      ,NULL
                END IF;
             END IF;
             RETURN points2segment(
                 p_point_one   => point_one
                ,p_point_two   => point_two
                ,p_srid        => p_point_one.SDO_SRID
          END IF;
       END points2segment;
       FUNCTION linear_gap_filler(
           p_input            IN  MDSYS.SDO_GEOMETRY
          ,p_tolerance        IN  NUMBER DEFAULT 0.05
       ) RETURN MDSYS.SDO_GEOMETRY
       AS
          sdo_input     MDSYS.SDO_GEOMETRY := p_input;
          num_tolerance NUMBER;
          int_counter   PLS_INTEGER;
          ary_edges     MDSYS.SDO_GEOMETRY_ARRAY;
          ary_starts    MDSYS.SDO_GEOMETRY_ARRAY;
          ary_ends      MDSYS.SDO_GEOMETRY_ARRAY;
          ary_nearest   MDSYS.SDO_NUMBER_ARRAY;
          ary_distance  MDSYS.SDO_NUMBER_ARRAY;
          num_temp      NUMBER;
          num_nearest   NUMBER;
          int_winner    PLS_INTEGER;
          int_winner2   PLS_INTEGER;
          sdo_point1    MDSYS.SDO_GEOMETRY;
          sdo_point2    MDSYS.SDO_GEOMETRY;
          boo_done      BOOLEAN;
          num_one       NUMBER;
          num_two       NUMBER;
          int_looper    PLS_INTEGER := 1;
       BEGIN
          -- Step 10
          -- Check over incoming parameters
          IF num_tolerance IS NULL
          THEN
             num_tolerance := 0.05;
          END IF;
          IF sdo_input IS NULL
          OR sdo_input.get_gtype() <> 6
          THEN
             RETURN sdo_input;
          END IF;
          IF is_spaghetti(sdo_input,p_tolerance) = 'TRUE'
          THEN
             RETURN sdo_input;
          END IF;
          <>      ary_edges     := MDSYS.SDO_GEOMETRY_ARRAY();
          ary_starts    := MDSYS.SDO_GEOMETRY_ARRAY();
          ary_ends      := MDSYS.SDO_GEOMETRY_ARRAY();
          ary_nearest   := MDSYS.SDO_NUMBER_ARRAY();
          ary_distance  := MDSYS.SDO_NUMBER_ARRAY();
          -- Step 20
          -- Break multistring into edges and start and end nodes
          int_counter := SDO_UTIL.GETNUMELEM(sdo_input);     
          ary_edges.EXTEND(int_counter);
          ary_starts.EXTEND(int_counter);
          ary_ends.EXTEND(int_counter);
          FOR i IN 1 .. int_counter
          LOOP 
             ary_edges(i)  := SDO_UTIL.EXTRACT(sdo_input,i);
             ary_starts(i) := get_start_point(ary_edges(i));
             ary_ends(i)   := get_end_point(ary_edges(i));
          END LOOP;
          -- Step 30
          -- Determine the closest endpoints
          ary_nearest.EXTEND(int_counter);
          ary_distance.EXTEND(int_counter);
          FOR i IN 1 .. int_counter
          LOOP
             num_nearest := NULL;
             int_winner := NULL;
             FOR j IN 1 .. int_counter
             LOOP
                IF j != i
                THEN
                   num_temp := SDO_GEOM.SDO_DISTANCE(
                       ary_edges(i)
                      ,ary_edges(j)
                      ,num_tolerance
                   IF num_nearest IS NULL
                   OR num_temp < num_nearest
                   THEN
                      num_nearest := num_temp;
                      int_winner := j;
                   END IF;
                END IF;
             END LOOP;
             ary_nearest(i) := int_winner;
             ary_distance(i) := num_nearest;
          END LOOP;
          -- Step 40
          -- Find the smallest gap
          int_winner := NULL;
          num_nearest := NULL;
          FOR i IN 1 .. int_counter
          LOOP
             IF num_nearest IS NULL
             OR ary_distance(i) < num_nearest
             THEN
                 int_winner := i;
                 num_nearest := ary_distance(i);
                 int_winner2 := ary_nearest(i);
             END IF;
          END LOOP;
          -- Step 50
          -- Determine the endpoints to connect
          num_one := SDO_GEOM.SDO_DISTANCE(
             get_start_point(ary_edges(int_winner)),
             ary_edges(int_winner2),
             num_tolerance
          num_two := SDO_GEOM.SDO_DISTANCE(
             get_end_point(ary_edges(int_winner)),
             ary_edges(int_winner2),
             num_tolerance
          IF ( num_one = 0 AND SDO_GEOM.RELATE(
             get_start_point(ary_edges(int_winner)),
             'ANYINTERACT',
             ary_edges(int_winner2),
             num_tolerance
          ) = 'TRUE' )
          OR ( num_two = 0 AND SDO_GEOM.RELATE(
             get_end_point(ary_edges(int_winner)),
             'ANYINTERACT',
             ary_edges(int_winner2),
             num_tolerance
          ) = 'TRUE' )
          THEN
             sdo_point1 := NULL;
          ELSIF num_one < num_two
          THEN
             sdo_point1 := get_start_point(ary_edges(int_winner));
          ELSE
             sdo_point1 := get_end_point(ary_edges(int_winner));
          END IF;
          num_one := SDO_GEOM.SDO_DISTANCE(
             get_start_point(ary_edges(int_winner2)),
             ary_edges(int_winner),
             num_tolerance
          num_two := SDO_GEOM.SDO_DISTANCE(
             get_end_point(ary_edges(int_winner2)),
             ary_edges(int_winner),
             num_tolerance
          IF ( num_one = 0 AND SDO_GEOM.RELATE(
             get_start_point(ary_edges(int_winner2)),
             'ANYINTERACT',
             ary_edges(int_winner),
             num_tolerance
          ) = 'TRUE' )
          OR ( num_two = 0 AND SDO_GEOM.RELATE(
             get_end_point(ary_edges(int_winner2)),
             'ANYINTERACT',
             ary_edges(int_winner),
             num_tolerance
          ) = 'TRUE' )
          THEN
             sdo_point2 := NULL;
          ELSIF num_one < num_two
          THEN
             sdo_point2 := get_start_point(ary_edges(int_winner2));
          ELSE
             sdo_point2 := get_end_point(ary_edges(int_winner2));
          END IF;
          -- Step 50
          -- Smash together
          IF sdo_point1 IS NULL
          OR sdo_point2 IS NULL
          THEN
             sdo_input := SDO_UTIL.CONCAT_LINES(
                ary_edges(int_winner),
                ary_edges(int_winner2)
          ELSE
             sdo_input := SDO_UTIL.CONCAT_LINES(
                SDO_UTIL.CONCAT_LINES(
                   ary_edges(int_winner),
                   points2segment(sdo_point1,sdo_point2)
                ary_edges(int_winner2)
          END IF;
          boo_done := TRUE;
          FOR i IN 1 .. int_counter
          LOOP
             IF i NOT IN (int_winner,int_winner2)
             THEN
                sdo_input := SDO_UTIL.APPEND(sdo_input,ary_edges(i));
                boo_done := FALSE;
             END IF;
          END LOOP;
          -- Step 60
          -- Check if valid if returning
          IF sdo_input.get_gtype() = 2
          OR boo_done = TRUE
          THEN
             RETURN sdo_input;
          END IF;
          int_looper := int_looper + 1;
          GOTO TOP_OF_IT;
       END linear_gap_filler;
    END dz_gap_fill;

Maybe you are looking for