You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@subversion.apache.org by Paul Burba <pa...@softlanding.com> on 2006/02/24 17:15:10 UTC
[PATCH] #8 OS400/EBCDIC Port: Implement apr_file_mtime_set() alternative.
Hello All,
(Don't know what the OS400/EBCDIC port is about? See:
http://svn.haxx.se/dev/archive-2006-02/0519.shtml)
apr_file_mtime_set() is not implemented on OS400, this patch provides a
workaround so svn_io_set_file_affected_time() can still do its thing.
For reference, here is the IBM's docstring for the function and the struct
it uses:
#ifdef AS400
/**
* The utimbuf structure analogous to POSIX.1 definition.
*/
typedef struct apr_utimbuf_t apr_utimbuf_t;
struct apr_utimbuf_t {
/** The new access time */
apr_time_t atime;
/** The new modification time */
apr_time_t mtime;
};
#endif
#ifdef AS400 /**
* Set the specified file's access and modification times. The file is
* specified by filename, instead of using a pre-opened file. If the file
is a
* symlink, this function will resolve the link and set times for the file
the
* symlink refers to.
* @param fname The name of the file to set times.
* @param buf The desired access and modification times. If buf is a NULL
* pointer, the access and modification times are set to the current time.
* @deffunc apr_status_t apr_utime(const char *fname, const apr_utimbuf_t
*buf)
* @tip This function returns APR_ENOTIMPL if the platform does not
support
* change of file access and modification times.
*/
APR_DECLARE(apr_status_t) apr_utime(const char *fname, const apr_utimbuf_t
*buf);
#endif
Please review if you have a chance, thanks,
Paul B.
[[[
OS400/EBCDIC Port: Implement apr_file_mtime_set() alternative.
This is one of several patches to allow Subversion to run on IBM's
OS400 V5R4. It uses the OS400 specific function apr_utime() instead
of apr_file_mtime_set(), which is not implemented on OS400 APR.
* subversion/libsvn_subr/io.c
(svn_io_set_file_affected_time): Use apr_utime() to set file
modification time.
]]]
_____________________________________________________________________________
Scanned for SoftLanding Systems, Inc. and SoftLanding Europe Plc by IBM Email Security Management Services powered by MessageLabs.
_____________________________________________________________________________
Re: [PATCH] #8 OS400/EBCDIC Port: Implement apr_file_mtime_set() alternative.
Posted by Mark Phippard <ma...@softlanding.com>.
rooneg@gmail.com wrote on 02/24/2006 01:40:41 PM:
> On 2/24/06, Mark Phippard <ma...@softlanding.com> wrote:
>
> > What they told us is that they generally only ported what they needed
to
> > support the httpd port. We were the first people to ever contact them
> > about using APR and porting other code to the iSeries. They have been
> > fairly responsive to us, the reality though is that they are IBM and a
> > programmer does not have the authority to just do "what is right"
without
> > having some higher-level grant budgetary approval. So we point these
> > things out to them and they apologize and put them on their list. They
> > have fixed and added several things for us.
>
> The weird part is that IBM was one of the companies that helped to
> create APR, their engineers (while working on Apache2) were
> instrumental in getting it off the ground. It's a wonderful "left
> hand doesn't know what the right hand is doing" situation.
Apache 1.3 never could have run on OS/400, so I know that they worked
closely with the Apache2 team, at least initially. OS/400 was running an
officially supported version of Apache2 for at least 18 months before it
was GA. When this was happening, they were highly promoting this to the
OS/400 community which is why it came a such a surprise to me when their
code was not in the APR repository.
> I doubt it'll happen, but I agree it would be nice. This isn't the
> only time this sort of thing has happened by the way, there's an HP
> internal port of APR to OpenVMS that has never seen the light of day
> either, as far as I can tell. I'd love it if these companies would
> work with the APR community to get their changes into the actual APR
> source tree, but I suspect they're too set in their ways.
When I met with IBM on the issue they said it was purely a
budgetary/resource decision. Someone decided it would cost too much money
to cleanup the code and go through the process. I was really surprised
they were willing to make this UTF-8 change, so maybe things will get
better. I have to think they could reevaluate their whole porting effort
for httpd and realize they could probably start over and do less work.
Maybe when they move to 2.2 they will look at options like this.
Mark
_____________________________________________________________________________
Scanned for SoftLanding Systems, Inc. and SoftLanding Europe Plc by IBM Email Security Management Services powered by MessageLabs.
_____________________________________________________________________________
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Re: [PATCH] #8 OS400/EBCDIC Port: Implement apr_file_mtime_set() alternative.
Posted by Garrett Rooney <ro...@electricjellyfish.net>.
On 2/24/06, Mark Phippard <ma...@softlanding.com> wrote:
> What they told us is that they generally only ported what they needed to
> support the httpd port. We were the first people to ever contact them
> about using APR and porting other code to the iSeries. They have been
> fairly responsive to us, the reality though is that they are IBM and a
> programmer does not have the authority to just do "what is right" without
> having some higher-level grant budgetary approval. So we point these
> things out to them and they apologize and put them on their list. They
> have fixed and added several things for us.
The weird part is that IBM was one of the companies that helped to
create APR, their engineers (while working on Apache2) were
instrumental in getting it off the ground. It's a wonderful "left
hand doesn't know what the right hand is doing" situation.
> I was a bit disappointed when I realized that they were maintaining their
> own version of APR. Now that OS/400 has this "UTF-8" option, my hope is
> that they will eventually try to move back towards the standard
> implementation. It is just a hope though.
I doubt it'll happen, but I agree it would be nice. This isn't the
only time this sort of thing has happened by the way, there's an HP
internal port of APR to OpenVMS that has never seen the light of day
either, as far as I can tell. I'd love it if these companies would
work with the APR community to get their changes into the actual APR
source tree, but I suspect they're too set in their ways.
-garrett
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Re: [PATCH] #8 OS400/EBCDIC Port: Implement apr_file_mtime_set() alternative.
Posted by Paul Burba <pa...@softlanding.com>.
Mark Phippard <ma...@softlanding.com> wrote on 02/24/2006 01:35:38 PM:
> By the way, I believe we are nearing the end of the patches. I was
> thinking Paul probably ought to have pointed that out so that you do not
> think this is never ending. Producing the patches in "logical pieces"
is
> time consuming because we need them all in place in order to run any
> tests. So every time something is tweaked it takes a bit of work to
> manage it.
>
> Paul, how many are left after this?
There will be two more, one rather involved one related to running hook
scripts and one that disables command line options that the OS400 port
doesn't support at the moment.
I should mention that these two will be the last of the "core" patches
needed to run Subversion on OS400, I have other changes related to running
the python test suite, but those still need a good bit of work so won't be
seen for a while.
Paul B.
_____________________________________________________________________________
Scanned for SoftLanding Systems, Inc. and SoftLanding Europe Plc by IBM Email Security Management Services powered by MessageLabs.
_____________________________________________________________________________
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Re: [PATCH] #8 OS400/EBCDIC Port: Implement apr_file_mtime_set() alternative.
Posted by Mark Phippard <ma...@softlanding.com>.
rooneg@gmail.com wrote on 02/24/2006 01:15:07 PM:
> On 2/24/06, Paul Burba <pa...@softlanding.com> wrote:
> > Hello All,
> >
> > (Don't know what the OS400/EBCDIC port is about? See:
> > http://svn.haxx.se/dev/archive-2006-02/0519.shtml)
> >
> > apr_file_mtime_set() is not implemented on OS400, this patch provides
a
> > workaround so svn_io_set_file_affected_time() can still do its thing.
>
> This seems reasonable to me, +1.
>
> As a side note, is anyone else getting the feeling that the IBM guys
> who ported APR to OS400 are kind of missing the point of a PORTABLE
> runtime?
What they told us is that they generally only ported what they needed to
support the httpd port. We were the first people to ever contact them
about using APR and porting other code to the iSeries. They have been
fairly responsive to us, the reality though is that they are IBM and a
programmer does not have the authority to just do "what is right" without
having some higher-level grant budgetary approval. So we point these
things out to them and they apologize and put them on their list. They
have fixed and added several things for us.
I was a bit disappointed when I realized that they were maintaining their
own version of APR. Now that OS/400 has this "UTF-8" option, my hope is
that they will eventually try to move back towards the standard
implementation. It is just a hope though.
The main issue is that we have always wanted to support the existing
OS/400 install base so even if they implement some of these things it puts
us in a difficult position as to whether to use them and require users to
update to the very latest version or provide a workaround.
By the way, I believe we are nearing the end of the patches. I was
thinking Paul probably ought to have pointed that out so that you do not
think this is never ending. Producing the patches in "logical pieces" is
time consuming because we need them all in place in order to run any
tests. So every time something is tweaked it takes a bit of work to
manage it.
Paul, how many are left after this?
Mark
_____________________________________________________________________________
Scanned for SoftLanding Systems, Inc. and SoftLanding Europe Plc by IBM Email Security Management Services powered by MessageLabs.
_____________________________________________________________________________
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Re: [PATCH] #8 OS400/EBCDIC Port: Implement apr_file_mtime_set() alternative.
Posted by Garrett Rooney <ro...@electricjellyfish.net>.
On 2/24/06, Paul Burba <pa...@softlanding.com> wrote:
> Hello All,
>
> (Don't know what the OS400/EBCDIC port is about? See:
> http://svn.haxx.se/dev/archive-2006-02/0519.shtml)
>
> apr_file_mtime_set() is not implemented on OS400, this patch provides a
> workaround so svn_io_set_file_affected_time() can still do its thing.
This seems reasonable to me, +1.
As a side note, is anyone else getting the feeling that the IBM guys
who ported APR to OS400 are kind of missing the point of a PORTABLE
runtime?
-garrett
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org