[prev in list] [next in list] [prev in thread] [next in thread] 

List:       helix-server-cvs
Subject:    [Server-cvs] broadcast/transport/rtp/recv qtdirmgr.cpp, 1.10,
From:       jzeng () helixcommunity ! org
Date:       2011-01-31 22:15:43
Message-ID: 201101312215.p0VMFSNd032256 () mailer ! progressive-comp ! com
[Download RAW message or body]

Update of /cvsroot/server/broadcast/transport/rtp/recv
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv14584/server/broadcast/transport/rtp/recv

Modified Files:
	qtdirmgr.cpp qtdirmgr.h 
Log Message:
Synopsis
============
Bug 269302:  asyncfs not working with large files on win64
Branches:  head, server_14_2
Suggested Reviewer: Dean

Description
=========== 

There are two bugs:

1. On win64, stat() will fail on large file.  We need to use _stat64()  instead.  This involves the
fix on asyncfs, as well as changing the interface IHXStat2Response to use HXSTAT instead of "struct
stat".

2. A weird bug in fastfile.  On linux it works okay(or it doesn't get called).  But on win64

m_nStartReadPos &= ~(m_ulSectorAlignment - 1);

will chop off the higher 32 bit of m_nStartReadPos.

This fix is to make m_ulSectorAlignment HX_OFF_T.

Files Affected
==============
common/include/hxfiles.h,v
server/broadcast/transport/rtp/recv/qtdirmgr.cpp,v
server/broadcast/transport/rtp/recv/qtdirmgr.h,v
server/engine/dataflow/fastfile.cpp,v
server/engine/dataflow/pub/fastfile.h,v
server/fs/asncfs/asncfobj.cpp,v
server/fs/asncfs/asncfobj.h,v

Testing Performed
================= 

Unit Tests: 
None. 

Integration Tests: 
verify asyncfs works on both win64 and rhel5 with large files.

Leak Tests: 
None. 

Performance Tests: 
- None 

Platforms Tested: win-x86_64-vc10
Build verified: win-x86_64-vc10 






Index: qtdirmgr.cpp
===================================================================
RCS file: /cvsroot/server/broadcast/transport/rtp/recv/qtdirmgr.cpp,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -d -r1.10 -r1.11
--- qtdirmgr.cpp	14 Sep 2010 17:00:55 -0000	1.10
+++ qtdirmgr.cpp	31 Jan 2011 22:15:41 -0000	1.11
@@ -344,7 +344,7 @@
  */
 STDMETHODIMP
 QTDirectoryManager::Stat2Done (HX_RESULT    status,
-                               struct stat* pStat)
+                               HXSTAT* pStat)
 {
     const char* pNameStr = NULL;
     char szInodeMapKey[64];

Index: qtdirmgr.h
===================================================================
RCS file: /cvsroot/server/broadcast/transport/rtp/recv/qtdirmgr.h,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -d -r1.6 -r1.7
--- qtdirmgr.h	14 Sep 2010 17:00:55 -0000	1.6
+++ qtdirmgr.h	31 Jan 2011 22:15:41 -0000	1.7
@@ -100,7 +100,7 @@
      */
     STDMETHOD(Stat2Done)        (THIS_
                                  HX_RESULT    status,
-                                 struct stat* pStat);
+                                 HXSTAT* pStat);
 
 
     /************************************************************************


_______________________________________________
Server-cvs mailing list
Server-cvs@helixcommunity.org
http://lists.helixcommunity.org/mailman/listinfo/server-cvs
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic