The update R7B-3 is released

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
11 messages Options
Reply | Threaded
Open this post in threaded view
|

The update R7B-3 is released

Kent Boortz-2

Bug fix release : otp_src_R7B-3
>From snapshot   : 20010601

This is a bug fix release R7B-3. You can download the full source
distribution or the patch that take R7B-2 up to R7B-3.

  http://www.erlang.org/download/otp_src_R7B-3.tar.gz
  http://www.erlang.org/download/otp_src_R7B-2to3.patch.gz

There are lots of bug fixes and improvements in this release, for more
information read the distribution readme

  http://www.erlang.org/download/otp_src_R7B-3.readme

To patch the previos release "otp_src_R7B-2" you use a patch program
that understand the "unified" patch format and do

  % cd otp_src_R7B-X
  % gzip -dc <location of patch file>/otp_src_R7B-2to3.patch.gz | patch -p1

There is no support for building a Windows version from source.

Note that the documentation is not updated, we will do that soon.

Darwin/OS X support was added but is not completed. Read the README file
for more information.

For installation instructions please read the README that is part of
the distribution,
 
The OTP Team


Reply | Threaded
Open this post in threaded view
|

The update R7B-3 is released

Niclas Eklund-2

Hello!

To make things easier to grasp I'll highlight the most important changes
in Orber.

* Performance - the Inter-ORB communication overhead significantly
  reduced; how much depends on the arguments/return-values.

* oe_register/oe_unregister - the overhead for registering
  IDL-specifications in the IFR significantly reduced.

* New configuration parameters (see User's Guide - 5.2 Configuration):
  - orber_debug_level generate reports for abnormal situations (i.e. not
    necessarily an error). Hence, use only during development.
  - iiop_setup_connection_timeout which should be used at all time
    together with iiop_connection_timeout and iiop_timeout.

* System exceptions - Orber now supports all system exceptions defined in
  the CORBA-2.4 specification. The documentation also contain a listing of
  all exceptions and why/when they might be thrown. Please note that it's
  the "short version"; for an extensive description see  
  http://www.omg.org/cgi-bin/doc?formal/01-02-01.

/Niclas


On 1 Jun 2001, Kent Boortz wrote:

> Bug fix release : otp_src_R7B-3
> >From snapshot   : 20010601
>
> This is a bug fix release R7B-3. You can download the full source
> distribution or the patch that take R7B-2 up to R7B-3.
>
>   http://www.erlang.org/download/otp_src_R7B-3.tar.gz
>   http://www.erlang.org/download/otp_src_R7B-2to3.patch.gz
>
> There are lots of bug fixes and improvements in this release, for more
> information read the distribution readme
>
>   http://www.erlang.org/download/otp_src_R7B-3.readme
>
> To patch the previos release "otp_src_R7B-2" you use a patch program
> that understand the "unified" patch format and do
>
>   % cd otp_src_R7B-X
>   % gzip -dc <location of patch file>/otp_src_R7B-2to3.patch.gz | patch -p1
>
> There is no support for building a Windows version from source.
>
> Note that the documentation is not updated, we will do that soon.
>
> Darwin/OS X support was added but is not completed. Read the README file
> for more information.
>
> For installation instructions please read the README that is part of
> the distribution,
>  
> The OTP Team









Reply | Threaded
Open this post in threaded view
|

The update R7B-4 is released

Kent Boortz-2
In reply to this post by Kent Boortz-2

Bug fix release : otp_src_R7B-4
>From snapshot   : 20010930
 
This is a bug fix release R7B-4. You can download the full source
distribution or the patch that take R7B-3 up to R7B-4.
 
  http://www.erlang.org/download/otp_src_R7B-4.tar.gz
  http://www.erlang.org/download/otp_src_R7B-3to4.patch.gz

If you are on the Ericsson intranet you can now use

  http://erlang.ericsson.se/opensource/download/otp_src_R7B-4.tar.gz
  http://erlang.ericsson.se/opensource/download/otp_src_R7B-3to4.patch.gz

The release readme is included below.
 
To patch the previos release "otp_src_R7B-3" you use a patch program
that understand the "unified" patch format and do
 
  % cd otp_src_R7B-X
  % gzip -dc /location/of/patch/file/otp_src_R7B-3to4.patch.gz | patch -p1
 
There is no support for building a Windows version from source.
 
For installation instructions please read the README that is part of
the distribution,
 
The OTP Team



Release notes

  -- mnesia -----------------------------------------------------------------

        OTP-3712 - Speed/load improvements disc_copies tables are not
                   implemented with dets anymore.

        OTP-XXXX - Removed references to dead nodes in loader queue,
                   which could lead to system wide hangings, if a node goes
                   down and another node has a reference to it in it's queue.

        OTP-4097 - Mnesia (3.10.0) could crash during restart if it the logs
                   contained an update_counter operation.

        OTP-4102 - Mnesia didn't remove buffered messages from dead nodes,
                   which could lead to that mnesia hanged if a mnesia went
                   down on another node during early startup.

        OTP-4127 - The user supplied fallback_error_function now get's the
                   dying Node name as an argument.

  -- mnesia_session ---------------------------------------------------------

        Fixed error in table_info when accessing mnesia version 3.9.4 or later.

  -- asn1 -------------------------------------------------------------------

        OTP-4025 - Do not generate record in .hrl file for SET types

        OTP-4026 - Fixed internal error when using BIT STRINGs with
                   Named Number List in combination with compact_bit_string
                   and ber_bin options.

        OTP-4037 - The atom 'com' can now be used in ENUMERATED as an
                   EnumerationItem.

        OTP-4057 - ber: Now it is possible to encode data from format
                   "{Type,Value}" in a SEQUENCE OF RequestParameter,
                   when RequestParameter is of type ENUMERATED.

        OTP-4058 - Now is the bug in the new parser removed, that caused
                   failure on COMPONENTS OF.

  -- erts/kernel/runtime_tools ----------------------------------------------

        OTP-4018 - disk_log caches written terms.
                   This implies that the close, lclose and sync functions
                   can return file errors.
                   pid2name/1 is a new debug function that given a
                   disk log process (a pid) returns the name of the log.

        OTP-4015 - In configurations where hostname resolving was done by the
                   inet_gethost_native module, a race condition could make
                   processes calling inet:gethostbyname crash with an exitcode
                   'unexpected_supervisor_response'. That race condition is
                   now removed.

        OTP-3933 - A trace client fun that can be given to
                   dbg:trace_client/3 now gets informed about the
                   end of trace, so it can do something useful
                   with its collected data. See dbg:trace_client/3.

        OTP-3934 - The flag 'procs' to erlang:trace/3 has got
                   a slightly new behaviour: Trace tag 'spawn' has
                   a new element, and trace tags 'register',
                   'unregister', and 'getting_unlinked' are new.
                   Therefore, new and/or different trace messages
                   will arrive to the tracer when the 'procs'
                   trace flag is used.

        OTP-3938 - When using trace flags 'running' and 'timestamp'
                   to determine the amount of running time different
                   processes in the system were using, the results
                   were somewhat unreliable since the time to write
                   the trace buffer itself randomly burdened the traced
                   processes. This is now compensated for by faking
                   process schedule out and in trace messages around
                   the file writes (for the trace file driver
                   trace_file_drv).

        OTP-3935 - Wrap file traces now can limit the size of each
                   file with a time instead of a size. See the
                   documentation for dbg:trace_port/2.

        OTP-3965 - The file names for wrap file traces has been changed.
                   This has been done to make it easier for auxiliary
                   tools to know the file names when fetching wrap
                   traces over the network, especially if the tools
                   used for fetching does not support wildcards in
                   filenames. See the documentation for
                   dbg:trace_port/2. NOTE that this change may affect
                   existing fetch tools. Especially note that the
                   number of files in the wrap trace must now be known
                   when reading the trace, or as it is stated in the
                   documentation: the same wrap trace specification
                   must be used when reading the trace as when
                   creating the trace.

        OTP-4047 - When gen_tcp:controlling_process/2 was called with
                   a closed socket as argument, it crashed internally
                   with a badmatch. This has now been corrected.
                   The error return code from gen_tcp:send/2 has been
                   changed in some cases to harmonize with the error
                   return codes from other functions in the module.
                   This is a slight incompatibility.

        OTP-3929 - When demonitor/1 was used on a monitor for a process
                   on another node (for example, using gen_server
                   calls), not all associated allocated memory was
                   freed, causing a memory leak of some 20 bytes each time.
                   This has been fixed.

        OTP-4019 - The --enable-threads flag was previously ignored by
                   the configure script. This has now been corrected, and
                   it is now possible to enable threads by passing the
                   --enable-threads flag to the configure script when
                   building the open source release.

        OTP-4071 - When the system limit on maximal number of nodes
                   known to a node had been reached (the distribution
                   table had been filled), pids, ports, and references
                   belonging to previously connected nodes could change
                   node belonging. This bug has now been fixed.

        OTP-4075 - dlmalloc was introduced in the Erlang emulator
                   version 5.0.2.3 because it performed better than
                   Solaris malloc when the emulator needed to allocate
                   large short-lived memory blocks. It was later observed
                   that it performed worse than Solaris malloc under some
                   conditions. We have therefore now removed dlmalloc
                   and replaced it with our own special treatment of
                   short-lived memory blocks (called sl_alloc) and the
                   standard malloc implementation for other blocks.

                   The current version of sl_alloc uses the system call
                   mmap() (on platforms where mmap() exists) in order to
                   allocate large blocks (just as dlmalloc) and uses the
                   standard malloc implementation for small blocks.

                   Maximum number of mmapped blocks and the threshold
                   which is used to determine if a block should be
                   mmapped can be adjusted, see "System Flags" in erl(1).

                   sl_alloc can be disabled. The standard malloc
                   implementation will in this case be used instead, see
                   "System Flags" in erl(1).

        OTP-4095 - A memory leak in the efile driver has been fixed.
                   For every file that was closed, 12 bytes were lost.

        OTP-4109 - A bug in the heap fragment allocation could cause an
                   emulator crash. This bug has now been fixed.

        OTP-4112 - Emulator could crash due to exiting process monitoring
                   process on a node that concurrently goes down. This
                   has now been corrected.

        OTP-4116 - Miscalculation in gc could cause emulator crash. This has
                   now been fixed.

        OTP-4089 - A creepy bug involving trace has been corrected: when
                   trace process specification 'all' or 'new' was given to
                   erlang:trace/3, a default trace flags and tracer
                   for new processes was stored in the emulator. If then,
                   this tracer was killed, all existing processes that tried
                   to send trace messages to the killed tracer noted that
                   their tracer was dead, and cleared their trace flags, so,
                   eventually, the tracing in the emulator faded off,
                   except for all new processes that also cleared their
                   trace flags only after trying to send one trace message
                   to the dead tracer. So far so well. Not neat, but well.
                   Unfortunately, much later, the pid of the dead
                   tracer was reused for a new innocent process that
                   unexpectedly got all trace messages from all new processes.
                   This typically caused that process to crash.
                   Now, when the process that is default tracer dies,
                   the emulator default trace flags and tracer are cleared
                   immediately.

                   The faked time compensating trace message
                   {trace_ts, Pid, out, MFA} has been changed to
                   {trace_ts, Pid, out, 0} because the MFA was almost
                   always wrong, and very hard to make correct. The same
                   applies for {trace_ts, Pid, in, 0} as well, but
                   of course, the real 'out' and 'in' messages contains
                   MFA as before. This may be regarded as an
                   incompability, but note that MFA=0 could
                   appear before in rare cases, though it was not documented.

                   A trace flag 'all' has been added to the repertoire of
                   erlang:trace/3.

                   When turning off trace flags with erlang:trace/3,
                   it is no longer necessary to state the correct current
                   tracer of the traced process(es).

                   Please see the documentation for erlang:trace/3.

        OTP-4120 - An mmap leak in sl_alloc has been fixed.

        OTP-4115 - A memory leak of 36 bytes per thread created, and a
                   potential memory leak of 8 bytes per thread created
                   have been fixed.

  -- os_mon -----------------------------------------------------------------

        OTP-4000 - Gen_server calls to the memsup server of the os_mon
                   application could fail due to slow responses from
                   the memsup port program. The memory polling is now handled
                   by a separate process making answers from memsup more or
                   less instant.
                   The disksup server of the os_mon application is modified so
                   that it does not use os:cmd() on Unix systems.

  -- orber ------------------------------------------------------------------

        Orber now support interceptors.

  -- cosEvent --------------------------------------------------------------

        cosEvent-2.0

        This version is a completely new version of the cosEvent
        application; older versions was not compliant with the OMG
        specification. The look and feel have been changed
        to be more uniform with the other COS-services.

        Incompatibilities
        -----------------

        All API:s not compliant with the OMG standard have been removed.

        Registering the cosEvent application in the IFR is done via the
        cosEventApp module. Upgrade in runtime is not possible.

  -- cosNotification -------------------------------------------------------

        OTP-4078 - It is now possible to start global channel factories.

        OTP-4077 - The Orber, version 3.2.5 or later, configuration parameter
                   orber_debug_level can now be used to generate reports when
                   abnormal situations occurs. For more information consult
                   the Orber User's Guide. Note, it is not recommended to use
                   this option for delivered systems since some of the reports
                   is not to be considered as errors. The value of
                   orber_debug_level must be 3, or higher, for reports to be
                   generated.

        OTP-4079 - When using the cosEvent API accessing a cosNotification
                   admins the objects returned by the functions
                   obtain_push_supplier, obtain_pull_supplier,
                   obtain_push_consumer and obtain_pull_consumer was not of
                   the correct type. Due to the interface change it is not
                   possible to upgrade during runtime.

  -- cosNotification/cosTime -----------------------------------------------

        OTP-4086 - If one used the '_get_default_supplier_admin'/1, exported
                   by the CosNotifyChannelAdmin_EventChannel-module, it
                   resulted in a loop which overloaded the channel. This is
                   no longer the case.

        OTP-4092 - If one used the '_get_default_filter_factory'/1, exported
                   by the CosNotifyChannelAdmin_EventChannel-module, a new
                   instance was created each time. Now fixed.

        OTP-4098 - SupplierAdmin's did not filter any events, even though
                   Filter objects had been attached to the SupplierAdmin.

        OTP-4099 - When passing event sequences, the PushSuppliers and
                   PullSuppliers could crash if the objects had Filter objects
                   associated and only a subset of the sequences where
                   approved.

        OTP-4093 - The include paths for CosNotification.idl have been
                   changed. Hence, if you include this file in your own
                   IDL-files you must update your paths to also point to
                   where the cosEvent IDL-files are stored. An includepath
                   in CosTimerEvent.idl have been changed. Hence, if you
                   include this file you should check your include paths
                   for your IDL-file(s), i.e., add the path to
                   CosEventComm.idl.

  -- tools -----------------------------------------------------------------

        OTP-4010 - A preliminary version of the new fprof tool has been
                   added to application tools.

  -- ic --------------------------------------------------------------------

        OTP-4107 - Added the erlang binary special type in C backends.
                   The erlang binary special type allows efficient transfer of
                   binaries between erlang and C. At the C side, the erlang
                   binary type is represented the same way as idl-c sequences.
                   At the erlang side, the build in binary type is used.
                   To erlang binary type is defined inside the erlang.idl file.

  -- sasl ------------------------------------------------------------------

        OTP-3998 - systools:make_relup/3,4 now generates
                   upgrade instructions for the applications in start
                   order, instead of in reversed start order.

        OTP-4121 - systools:make_script/1,2 now keeps the order
                   of the release resource file (.rel) also for
                   included applications.



Reply | Threaded
Open this post in threaded view
|

The update R7B-4 is released

David Fox
Is there any known problems with R7B-4 on Mac OS X.1 ? I followed what
the README note (heading: Darwin/OS X) said. I did the same for R7B-3 on
OS X 10.0.3, and it built then.

Here's the error message :

cc -g -O2
-I/Users/david/Desktop/otp_src_R7B-4/erts/autoconf/powerpc-apple-
darwin1.4  -no-cpp-precomp -fPIC -Wall -O2 -DDEBUG_DIST -I.
-DHAVE_CONFIG_H    -DUSE_DNS -DEPMD_PORT=4369 -c erl_malloc.c -o
/Users/david/Desktop/otp_src_R7B-4/lib/erl_interface/obj/powerpc-apple-darwin1.
4/erl_malloc.o
/var/tmp/ccaDdaaa.s:324:Expected comma after segment-name
/var/tmp/ccaDdaaa.s:324:Rest of line ignored. 1st junk character valued
46 (.).
/var/tmp/ccaDdaaa.s:324:Spurious digit 0.
/var/tmp/ccaDdaaa.s:324:Spurious digit 6.
/var/tmp/ccaDdaaa.s:324:Rest of line ignored. 1st junk character valued
57 (9).
/var/tmp/ccaDdaaa.s:324:Junk character 40 (().
/var/tmp/ccaDdaaa.s:324:Rest of line ignored. 1st junk character valued
48 (0).
make[4]: ***
[/Users/david/Desktop/otp_src_R7B-4/lib/erl_interface/obj/powerpc-apple-darwin1.
4/erl_malloc.o] Error 1


have a nice day,

--david.


On tisdag, oktober 2, 2001, at 09:52 , Kent Boortz wrote:

>
> Bug fix release : otp_src_R7B-4
> From snapshot   : 20010930
>




Reply | Threaded
Open this post in threaded view
|

The update R7B-4 is released

David Fox
In reply to this post by Kent Boortz-2
Is there any known problems with R7B-4 on Mac OS X.1 ? I followed what
the README note (heading: Darwin/OS X) said. I did the same for R7B-3 on
OS X 10.0.3, and it built then.

Here's the error message :

cc -g -O2
-I/Users/david/Desktop/otp_src_R7B-4/erts/autoconf/powerpc-apple-
darwin1.4  -no-cpp-precomp -fPIC -Wall -O2 -DDEBUG_DIST -I.
-DHAVE_CONFIG_H    -DUSE_DNS -DEPMD_PORT=4369 -c erl_malloc.c -o
/Users/david/Desktop/otp_src_R7B-4/lib/erl_interface/obj/powerpc-apple-darwin1.
4/erl_malloc.o
/var/tmp/ccaDdaaa.s:324:Expected comma after segment-name
/var/tmp/ccaDdaaa.s:324:Rest of line ignored. 1st junk character valued
46 (.).
/var/tmp/ccaDdaaa.s:324:Spurious digit 0.
/var/tmp/ccaDdaaa.s:324:Spurious digit 6.
/var/tmp/ccaDdaaa.s:324:Rest of line ignored. 1st junk character valued
57 (9).
/var/tmp/ccaDdaaa.s:324:Junk character 40 (().
/var/tmp/ccaDdaaa.s:324:Rest of line ignored. 1st junk character valued
48 (0).
make[4]: ***
[/Users/david/Desktop/otp_src_R7B-4/lib/erl_interface/obj/powerpc-apple-darwin1.
4/erl_malloc.o] Error 1


have a nice day,

--david.


On tisdag, oktober 2, 2001, at 09:52 , Kent Boortz wrote:

>
> Bug fix release : otp_src_R7B-4
> From snapshot   : 20010930
>




Reply | Threaded
Open this post in threaded view
|

Erlang workshop and user conference

Vlad Dumitrescu-3
In reply to this post by Kent Boortz-2
>> > cross({V10,V11,V12}, {V20,V21,V22}) when float(V10),
>> >    float(V11), float(V12), float(V20), float(V21),
>> >    float(V22) ->
>> >     {V11*V22-V12*V21,V12*V20-V10*V22,V10*V21-V11*V20}.

>Better:
>-define(floats(X,Y,Z), float(X), float(Y), float(Z)).
>
>cross({V10,V11,V12}, {V20,V21,V22})
>   when ?floats(V10,V11,V12), ?floats(V20,V21,V22) ->
>   {V11*V22-V12*V21,V12*V20-V10*V22,V10*V21-V11*V20}.

Hi,

Just a 2 beans thought... Wouldn't it be even nicer to read and easier to understand if one could add some syntactic sugar and be able to specify types not as

fun(X, {Y, Z}) when integer(X), list(Z) -> ...

but as (for example)

fun (X/integer, {Y, Z/list}) -> ...  ?

regards, Vlad


Reply | Threaded
Open this post in threaded view
|

The update R7B-4 is released

Kent Boortz-2
In reply to this post by David Fox

OS X is still not part of our daily test and build and this time I had
no time to manually build and run on OS X (busy with R8). But the
error you get is not a syntax error and looks more like an internal
error from the assembler/compiler/linker. I haven't seen this error
message or anything similar before but will try to find time to do a
build myself.

kent


david wallin <david> writes:

> Is there any known problems with R7B-4 on Mac OS X.1 ? I followed what
> the README note (heading: Darwin/OS X) said. I did the same for R7B-3 on
> OS X 10.0.3, and it built then.
>
> Here's the error message :
>
> cc -g -O2
> -I/Users/david/Desktop/otp_src_R7B-4/erts/autoconf/powerpc-apple-
> darwin1.4  -no-cpp-precomp -fPIC -Wall -O2 -DDEBUG_DIST -I.
> -DHAVE_CONFIG_H    -DUSE_DNS -DEPMD_PORT=4369 -c erl_malloc.c -o
> /Users/david/Desktop/otp_src_R7B-4/lib/erl_interface/obj/powerpc-apple-darwin1.
> 4/erl_malloc.o
> /var/tmp/ccaDdaaa.s:324:Expected comma after segment-name
> /var/tmp/ccaDdaaa.s:324:Rest of line ignored. 1st junk character valued
> 46 (.).
> /var/tmp/ccaDdaaa.s:324:Spurious digit 0.
> /var/tmp/ccaDdaaa.s:324:Spurious digit 6.
> /var/tmp/ccaDdaaa.s:324:Rest of line ignored. 1st junk character valued
> 57 (9).
> /var/tmp/ccaDdaaa.s:324:Junk character 40 (().
> /var/tmp/ccaDdaaa.s:324:Rest of line ignored. 1st junk character valued
> 48 (0).
> make[4]: ***
> [/Users/david/Desktop/otp_src_R7B-4/lib/erl_interface/obj/powerpc-apple-darwin1.
> 4/erl_malloc.o] Error 1


Reply | Threaded
Open this post in threaded view
|

Unix Signal Handling in Erlang and ODBC memory leaks.

Martin Carlson-2
In reply to this post by Kent Boortz-2
Hello,
    Does anyone have any examples of unix signal handling in erlang. I would like
to make a loadbalancer that I have written respond to sighup.
Also I was curious to know if anyone has used the odbc module and knows anything
about a memory leak.  The proccess "odbcserver" is growing slowly over a period of
a few days until it eventually wedges.  Any advice on these two issues would be
greatly appreciated.

                Cheers,
                Martin Logan



Reply | Threaded
Open this post in threaded view
|

Unix Signal Handling in Erlang and ODBC memory leaks.

Per Hedeland-4
"Martin J. Logan" <martin> wrote:
>    Does anyone have any examples of unix signal handling in erlang. I would like
>to make a loadbalancer that I have written respond to sighup.

Not exactly an example, but you could have a look at:

http://www.erlang.org/ml-archive/erlang-questions/200108/msg00089.html

There is no provision for handling signals in Erlang "itself", i.e. you
will need to use a driver - or a port program of course, might actually
be a better idea. Also for the driver case, the emulator has its own
handler for a number of signals, and interfering with that will probably
have "interesting" results - but SIGHUP should be OK I believe.

--Per Hedeland
per


Reply | Threaded
Open this post in threaded view
|

Unix Signal Handling in Erlang and ODBC memory leaks.

Daniel Solaz-2
it would be nice if a process could call some BIF to tell the
emulator it is interested in getting a message when a signal is
received:

signal([sigint, sigterm]), % the BIF
...
receive
  {signal, sigint} -> ...;
  {signal, sigterm} -> ...

--
d s o l a z @ L E P I D O P T E R O . C O M



Reply | Threaded
Open this post in threaded view
|

ODBC memory leaks.

Ingvar Meyer
In reply to this post by Martin Carlson-2
The latest version of Erlang ODBC application is 0.9.1 and you find it in
Erlang release R8. This version does not leak memory.
Erlang ODBC application version 0.8.2 and lower has a memory leak. My
advises is to change to Erlang ODBC application version 0.9.1
____________________________________________________________________________
___
Ingvar Meyer
Ericsson Utveckling AB
Network Core Products
Box 1505
SE-125 25 ?lvsj?, Sweden
email: ingvar.meyer

"Martin J. Logan" <martin> wrote in message
news:3BBB81DB.E03D70D1
> Hello,
>     Does anyone have any examples of unix signal handling in erlang. I
would like
> to make a loadbalancer that I have written respond to sighup.
> Also I was curious to know if anyone has used the odbc module and knows
anything
> about a memory leak.  The proccess "odbcserver" is growing slowly over a
period of
> a few days until it eventually wedges.  Any advice on these two issues
would be
> greatly appreciated.
>
>                 Cheers,
>                 Martin Logan
>