You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@trafficserver.apache.org by jp...@apache.org on 2010/01/27 22:04:16 UTC
svn commit: r903831 - in /incubator/trafficserver/traffic/branches/dev:
iocore/block-cache/ iocore/net/ iocore/utils/ proxy/ proxy/api/include/
Author: jplevyak
Date: Wed Jan 27 21:04:14 2010
New Revision: 903831
URL: http://svn.apache.org/viewvc?rev=903831&view=rev
Log:
TS-74: fix issues with regressions tests not completing and SEGV specific to dev branch
Modified:
incubator/trafficserver/traffic/branches/dev/iocore/block-cache/BlockCacheSegmentVConnection.cc
incubator/trafficserver/traffic/branches/dev/iocore/net/P_UnixNetVConnection.h
incubator/trafficserver/traffic/branches/dev/iocore/net/UnixNetAccept.cc
incubator/trafficserver/traffic/branches/dev/iocore/net/UnixNetVConnection.cc
incubator/trafficserver/traffic/branches/dev/iocore/utils/I_Disk.h
incubator/trafficserver/traffic/branches/dev/proxy/InkAPI.cc
incubator/trafficserver/traffic/branches/dev/proxy/MuxVC.cc
incubator/trafficserver/traffic/branches/dev/proxy/MuxVC.h
incubator/trafficserver/traffic/branches/dev/proxy/api/include/InkAPIPrivateIOCore.h
Modified: incubator/trafficserver/traffic/branches/dev/iocore/block-cache/BlockCacheSegmentVConnection.cc
URL: http://svn.apache.org/viewvc/incubator/trafficserver/traffic/branches/dev/iocore/block-cache/BlockCacheSegmentVConnection.cc?rev=903831&r1=903830&r2=903831&view=diff
==============================================================================
--- incubator/trafficserver/traffic/branches/dev/iocore/block-cache/BlockCacheSegmentVConnection.cc (original)
+++ incubator/trafficserver/traffic/branches/dev/iocore/block-cache/BlockCacheSegmentVConnection.cc Wed Jan 27 21:04:14 2010
@@ -57,9 +57,9 @@
}
};
- virtual VIO *do_io_write(Continuation * c = NULL, int nbytes = 0, IOBufferReader * buf = NULL, bool owner = false);
+ virtual VIO *do_io_write(Continuation * c = NULL, ink64 nbytes = 0, IOBufferReader * buf = NULL, bool owner = false);
- virtual VIO *do_io_read(Continuation * c, int nbytes, MIOBuffer * buf);
+ virtual VIO *do_io_read(Continuation * c, ink64 nbytes, MIOBuffer * buf);
virtual void do_io_close(int err = -1) {
};
@@ -89,7 +89,7 @@
}
VIO *
-BCSV_impl::do_io_write(Continuation * c, int nbytes, IOBufferReader * buf, bool owner)
+BCSV_impl::do_io_write(Continuation * c, ink64 nbytes, IOBufferReader * buf, bool owner)
{
// call into BC_OpenSegment for io strategy
@@ -109,7 +109,7 @@
}
VIO *
-BCSV_impl::do_io_read(Continuation * c, int nbytes, MIOBuffer * buf)
+BCSV_impl::do_io_read(Continuation * c, ink64 nbytes, MIOBuffer * buf)
{
// call into BC_OpenSegment for io strategy
Modified: incubator/trafficserver/traffic/branches/dev/iocore/net/P_UnixNetVConnection.h
URL: http://svn.apache.org/viewvc/incubator/trafficserver/traffic/branches/dev/iocore/net/P_UnixNetVConnection.h?rev=903831&r1=903830&r2=903831&view=diff
==============================================================================
--- incubator/trafficserver/traffic/branches/dev/iocore/net/P_UnixNetVConnection.h (original)
+++ incubator/trafficserver/traffic/branches/dev/iocore/net/P_UnixNetVConnection.h Wed Jan 27 21:04:14 2010
@@ -150,10 +150,6 @@
void get_local_sa();
- VIO *do_io_read_now(Continuation * c, int nbytes, MIOBuffer * buf);
- VIO *do_io_write_now(Continuation * c, int nbytes, IOBufferReader * buf, bool owner = false);
- void reenable_re_now(VIO * vio);
-
// these are not part of the pure virtual interface. They were
// added to reduce the amount of duplicate code in classes inherited
// from NetVConnection (SSL).
Modified: incubator/trafficserver/traffic/branches/dev/iocore/net/UnixNetAccept.cc
URL: http://svn.apache.org/viewvc/incubator/trafficserver/traffic/branches/dev/iocore/net/UnixNetAccept.cc?rev=903831&r1=903830&r2=903831&view=diff
==============================================================================
--- incubator/trafficserver/traffic/branches/dev/iocore/net/UnixNetAccept.cc (original)
+++ incubator/trafficserver/traffic/branches/dev/iocore/net/UnixNetAccept.cc Wed Jan 27 21:04:14 2010
@@ -490,12 +490,12 @@
vc->nh->open_list.enqueue(vc);
+#ifdef USE_EDGE_TRIGGER
// Set the vc as triggered and place it in the read ready queue in case there is already data on the socket.
- // The request will timeout on the connection if the client has already sent data and it is on the socket
- // ready to be read. This can occur under heavy load.
NetDebug("iocore_net", "acceptEvent : Setting triggered and adding to the read ready queue");
vc->read.triggered = 1;
vc->nh->read_ready_list.enqueue(vc);
+#endif
if (!action_->cancelled)
action_->continuation->handleEvent(NET_EVENT_ACCEPT, vc);
Modified: incubator/trafficserver/traffic/branches/dev/iocore/net/UnixNetVConnection.cc
URL: http://svn.apache.org/viewvc/incubator/trafficserver/traffic/branches/dev/iocore/net/UnixNetVConnection.cc?rev=903831&r1=903830&r2=903831&view=diff
==============================================================================
--- incubator/trafficserver/traffic/branches/dev/iocore/net/UnixNetVConnection.cc (original)
+++ incubator/trafficserver/traffic/branches/dev/iocore/net/UnixNetVConnection.cc Wed Jan 27 21:04:14 2010
@@ -579,9 +579,6 @@
{
addLogMessage("UnixNetVConnection::do_io_close");
- EThread *t = read.vio.mutex ? read.vio.mutex->thread_holding : write.vio.mutex->thread_holding;
- ink_debug_assert(t);
-
disable_read(this);
disable_write(this);
read.vio.buffer.clear();
@@ -599,8 +596,11 @@
else
closed = -1;
- if (!recursion && nh->mutex->thread_holding == t)
- close_UnixNetVConnection(this, t);
+ if (!recursion) {
+ EThread *t = this_ethread();
+ if (nh->mutex->thread_holding == t)
+ close_UnixNetVConnection(this, t);
+ }
}
void
Modified: incubator/trafficserver/traffic/branches/dev/iocore/utils/I_Disk.h
URL: http://svn.apache.org/viewvc/incubator/trafficserver/traffic/branches/dev/iocore/utils/I_Disk.h?rev=903831&r1=903830&r2=903831&view=diff
==============================================================================
--- incubator/trafficserver/traffic/branches/dev/iocore/utils/I_Disk.h (original)
+++ incubator/trafficserver/traffic/branches/dev/iocore/utils/I_Disk.h Wed Jan 27 21:04:14 2010
@@ -64,9 +64,9 @@
// creation callback.
// must NOT be called when another operation is active.
//
- virtual VIO *do_io(int op, Continuation * c = NULL, int nbytes = INT_MAX, MIOBuffer * buf = 0, int data = 0);
+ virtual VIO *do_io(int op, Continuation * c = NULL, ink64 nbytes = INK64_MAX, MIOBuffer * buf = 0, int data = 0);
- virtual VIO *do_io_write(Continuation * c = NULL, int nbytes = INT_MAX, IOBufferReader * buf = 0, bool owner = false) {
+ virtual VIO *do_io_write(Continuation * c = NULL, ink64 nbytes = INK64_MAX, IOBufferReader * buf = 0, bool owner = false) {
return NULL;
}
//
Modified: incubator/trafficserver/traffic/branches/dev/proxy/InkAPI.cc
URL: http://svn.apache.org/viewvc/incubator/trafficserver/traffic/branches/dev/proxy/InkAPI.cc?rev=903831&r1=903830&r2=903831&view=diff
==============================================================================
--- incubator/trafficserver/traffic/branches/dev/proxy/InkAPI.cc (original)
+++ incubator/trafficserver/traffic/branches/dev/proxy/InkAPI.cc Wed Jan 27 21:04:14 2010
@@ -1116,7 +1116,7 @@
}
VIO *
-INKVConnInternal::do_io_read(Continuation * c, int nbytes, MIOBuffer * buf)
+INKVConnInternal::do_io_read(Continuation * c, ink64 nbytes, MIOBuffer * buf)
{
m_read_vio.buffer.writer_for(buf);
m_read_vio.op = VIO::READ;
@@ -1134,7 +1134,7 @@
}
VIO *
-INKVConnInternal::do_io_write(Continuation * c, int nbytes, IOBufferReader * buf, bool owner)
+INKVConnInternal::do_io_write(Continuation * c, ink64 nbytes, IOBufferReader * buf, bool owner)
{
ink_assert(!owner);
m_write_vio.buffer.reader_for(buf);
Modified: incubator/trafficserver/traffic/branches/dev/proxy/MuxVC.cc
URL: http://svn.apache.org/viewvc/incubator/trafficserver/traffic/branches/dev/proxy/MuxVC.cc?rev=903831&r1=903830&r2=903831&view=diff
==============================================================================
--- incubator/trafficserver/traffic/branches/dev/proxy/MuxVC.cc (original)
+++ incubator/trafficserver/traffic/branches/dev/proxy/MuxVC.cc Wed Jan 27 21:04:14 2010
@@ -198,7 +198,7 @@
VIO *
-MuxClientVC::do_io_read(Continuation * c, int nbytes, MIOBuffer * buf)
+MuxClientVC::do_io_read(Continuation * c, ink64 nbytes, MIOBuffer * buf)
{
ink_debug_assert(!closed);
@@ -237,7 +237,7 @@
}
VIO *
-MuxClientVC::do_io_write(Continuation * c, int nbytes, IOBufferReader * abuffer, bool owner)
+MuxClientVC::do_io_write(Continuation * c, ink64 nbytes, IOBufferReader * abuffer, bool owner)
{
ink_debug_assert(!closed);
Modified: incubator/trafficserver/traffic/branches/dev/proxy/MuxVC.h
URL: http://svn.apache.org/viewvc/incubator/trafficserver/traffic/branches/dev/proxy/MuxVC.h?rev=903831&r1=903830&r2=903831&view=diff
==============================================================================
--- incubator/trafficserver/traffic/branches/dev/proxy/MuxVC.h (original)
+++ incubator/trafficserver/traffic/branches/dev/proxy/MuxVC.h Wed Jan 27 21:04:14 2010
@@ -107,9 +107,9 @@
void init(MuxVC * mvc, ink32 id);
void kill();
- virtual VIO *do_io_read(Continuation * c = NULL, int nbytes = INT_MAX, MIOBuffer * buf = 0);
+ virtual VIO *do_io_read(Continuation * c = NULL, ink64 nbytes = INK64_MAX, MIOBuffer * buf = 0);
- virtual VIO *do_io_write(Continuation * c = NULL, int nbytes = INT_MAX, IOBufferReader * buf = 0, bool owner = false);
+ virtual VIO *do_io_write(Continuation * c = NULL, ink64 nbytes = INK64_MAX, IOBufferReader * buf = 0, bool owner = false);
virtual bool is_over_ssl()
{
Modified: incubator/trafficserver/traffic/branches/dev/proxy/api/include/InkAPIPrivateIOCore.h
URL: http://svn.apache.org/viewvc/incubator/trafficserver/traffic/branches/dev/proxy/api/include/InkAPIPrivateIOCore.h?rev=903831&r1=903830&r2=903831&view=diff
==============================================================================
--- incubator/trafficserver/traffic/branches/dev/proxy/api/include/InkAPIPrivateIOCore.h (original)
+++ incubator/trafficserver/traffic/branches/dev/proxy/api/include/InkAPIPrivateIOCore.h Wed Jan 27 21:04:14 2010
@@ -84,17 +84,17 @@
int handle_event(int event, void *edata);
- VIO *do_io_read(Continuation * c, int nbytes, MIOBuffer * buf);
+ VIO *do_io_read(Continuation *c, ink64 nbytes, MIOBuffer *buf);
- VIO *do_io_write(Continuation * c, int nbytes, IOBufferReader * buf, bool owner = false);
+ VIO *do_io_write(Continuation *c, ink64 nbytes, IOBufferReader *buf, bool owner = false);
- void do_io_transform(VConnection * vc);
+ void do_io_transform(VConnection *vc);
void do_io_close(int lerrno = -1);
void do_io_shutdown(ShutdownHowTo_t howto);
- void reenable(VIO * vio);
+ void reenable(VIO *vio);
void retry(unsigned int delay);