FAQ
Hello,

I noticed that stream_set_write_buffer() is no more available on local files
because of the change made on 2003/03/18 to main/streams.c (1.125.2.41 ->
1.125.2.42: use a file descriptor instead of a file pointer).

As a result of this change, of course stream_set_write_buffer() and
set_file_buffer() does not work anymore in most of the cases because user-level
I/O buffer functions like setvbuf() does not work on file descriptors, though
I'm not sure if this is the "probelm" or not.

If this is an intentional result, fixing documents (== add note like "stream_set
_write_buffer does not work on local files, bla bla bla" and fix a sample code)
will do, but if not, maybe we should implement php-level I/O buffer or revert
this change (I'm not sure reverting this change makes another problem,
though:)

Regards,

Masaki Fujimoto
fujimoto@tunebiz.net
fujimoto@php.net

Search Discussions

  • Wez Furlong at May 1, 2003 at 11:14 am
    I am aware of this issue, however, reverting leaves us at the mercy of
    problems on solaris.

    I do plan to implement a write buffer, however, introducing that into
    the 4.3.x branch is probably a bad idea at this late stage.

    While I don't think that stream_set_write_buffer()/set_file_buffer()
    having no effect is such a bad thing (most php scripts don't have any
    need to call this function), I am concerned about the overall
    performance of writes in the absence of a user-space write buffer.

    So I'm looking into a solution at the moment; there is no need to update
    the documentation at this point.

    --Wez.

    On Thu, 1 May 2003, Masaki Fujimoto wrote:

    Hello,

    I noticed that stream_set_write_buffer() is no more available on local files
    because of the change made on 2003/03/18 to main/streams.c (1.125.2.41 ->
    1.125.2.42: use a file descriptor instead of a file pointer).

    As a result of this change, of course stream_set_write_buffer() and
    set_file_buffer() does not work anymore in most of the cases because user-level
    I/O buffer functions like setvbuf() does not work on file descriptors, though
    I'm not sure if this is the "probelm" or not.

    If this is an intentional result, fixing documents (== add note like "stream_set
    _write_buffer does not work on local files, bla bla bla" and fix a sample code)
    will do, but if not, maybe we should implement php-level I/O buffer or revert
    this change (I'm not sure reverting this change makes another problem,
    though:)

    Regards,

    Masaki Fujimoto
    fujimoto@tunebiz.net
    fujimoto@php.net

  • Masaki Fujimoto at May 1, 2003 at 11:26 am
    Ah, I understand the status of this issue (that will do for me), and I agree w/
    every point you mentioned.

    Wez Furlong <Pine.LNX.4.53.0305011157120.7207@zaneeb.brainnet.i>:
    I am aware of this issue, however, reverting leaves us at the mercy of
    problems on solaris.

    I do plan to implement a write buffer, however, introducing that into
    the 4.3.x branch is probably a bad idea at this late stage.

    While I don't think that stream_set_write_buffer()/set_file_buffer()
    having no effect is such a bad thing (most php scripts don't have any
    need to call this function), I am concerned about the overall
    performance of writes in the absence of a user-space write buffer.

    So I'm looking into a solution at the moment; there is no need to update
    the documentation at this point.

    --Wez.

    On Thu, 1 May 2003, Masaki Fujimoto wrote:

    Hello,

    I noticed that stream_set_write_buffer() is no more available on local files
    because of the change made on 2003/03/18 to main/streams.c (1.125.2.41 ->
    1.125.2.42: use a file descriptor instead of a file pointer).

    As a result of this change, of course stream_set_write_buffer() and
    set_file_buffer() does not work anymore in most of the cases because user-level
    I/O buffer functions like setvbuf() does not work on file descriptors, though
    I'm not sure if this is the "probelm" or not.

    If this is an intentional result, fixing documents (== add note like "stream_set
    _write_buffer does not work on local files, bla bla bla" and fix a sample code)
    will do, but if not, maybe we should implement php-level I/O buffer or revert
    this change (I'm not sure reverting this change makes another problem,
    though:)

    Regards,

    Masaki Fujimoto
    fujimoto@tunebiz.net
    fujimoto@php.net

    --
    Masaki Fujimoto
    fujimoto@techstyle.jp / fujimoto@php.net
    http://techstyle.jp/
  • Wico de Leeuw at May 1, 2003 at 3:59 pm
    Hiya

    when compiling the cvs of php5 of :
    May 01, 2003 15:30 GMT and May 01, 2003 13:30 GMT

    i got this compile error:
    /bin/sh /usr/src/php5-200305011530/libtool --silent --preserve-dup-deps
    --mode=compile gcc -Iext/standard/
    -I/usr/src/php5-200305011530/ext/standard/ -DPHP_ATOM_INC
    -I/usr/src/php5-200305011530/include -I/usr/src/php5-200305011530/main
    -I/usr/src/php5-200305011530 -I/usr/local/apache/include
    -I/usr/src/php5-200305011530/Zend -I/usr/local/openssl/include
    -I/usr/local/zlib/include
    -I/usr/local/mysql/include/mysql -I/usr/src/php5-200305011530/TSRM -g
    -O2 -prefer-pic -c /usr/src/php5-200305011530/ext/standard/file.c -o
    ext/standard/file.lo
    /usr/src/php5-200305011530/ext/standard/file.c:113:21: fnmatch.h: No such
    file or directory
    make: *** [ext/standard/file.lo] Error 1

    configure line:
    ./configure --prefix=/usr/local/php --with-openssl=/usr/local/openssl
    --with-pear=/usr/local/php/pear
    --with-apxs2filter=/usr/local/apache/bin/apxs
    --with-config-file-path=/home/apache/ --with-mysql=/usr/local/mysql
    --with-zlib=/usr/local/zlib --disable-rpath --disable-ipv6 --disable-cgi
    --disable-ctype --disable-posix --disable-xml --disable-overload
    --disable-mbregex --disable-tokenizer

    Gr,

    Wico

Related Discussions

Discussion Navigation
viewthread | post
Discussion Overview
groupphp-internals @
categoriesphp
postedMay 1, '03 at 10:54a
activeMay 1, '03 at 3:59p
posts4
users4
websitephp.net

People

Translate

site design / logo © 2020 Grokbase