Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
M
mariadb
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
mariadb
Commits
d7dc2f68
Commit
d7dc2f68
authored
Sep 12, 2005
by
jimw@mysql.com
Browse files
Options
Browse Files
Download
Plain Diff
Merge bk-internal:/home/bk/mysql-4.1
into mysql.com:/home/jimw/my/mysql-4.1-clean
parents
7efd9582
e17e8b38
Changes
11
Show whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
67 additions
and
48 deletions
+67
-48
README
README
+24
-41
include/my_global.h
include/my_global.h
+3
-0
include/violite.h
include/violite.h
+4
-0
ndb/src/mgmsrv/MgmtSrvr.cpp
ndb/src/mgmsrv/MgmtSrvr.cpp
+1
-4
ndb/src/ndbapi/SignalSender.cpp
ndb/src/ndbapi/SignalSender.cpp
+9
-1
sql-common/client.c
sql-common/client.c
+1
-1
sql/net_serv.cc
sql/net_serv.cc
+1
-1
vio/vio.c
vio/vio.c
+4
-0
vio/vio_priv.h
vio/vio_priv.h
+2
-0
vio/viosocket.c
vio/viosocket.c
+9
-0
vio/viossl.c
vio/viossl.c
+9
-0
No files found.
README
View file @
d7dc2f68
This is a release of MySQL, a
GPL (free) SQL database server (more
licence information in the PUBLIC file and in the reference manual)
.
This is a release of MySQL, a
dual-license SQL database server.
MySQL is brought to you by the MySQL team at MySQL AB
.
Please read the "Upgrading from..." section in the manual first, if you are
migrating from older versions of MySQL!
License information can be found in these files:
- For GPL (free) distributions, see the COPYING file.
- For commercial distributions, see the MySQLEULA.txt file.
The latest information about MySQL can be found at:
http://www.mysql.com
To see what it can do take a look at the features section in the
manual.
For further information about MySQL or additional documentation, see:
- The latest information about MySQL: http://www.mysql.com
- The current MySQL documentation: http:/dev.mysql.com/doc
For installation instructions see the Installation chapter in the
manual.
Some manual sections of special interest:
For future plans see the TODO appendix in the manual.
- If you are migrating from an older version of MySQL, please read the
"Upgrading from..." section first!
- To see what MySQL can do, take a look at the features section.
- For installation instructions, see the Installation chapter.
- For future plans, see the TODO appendix.
- For the new features/bugfix history, see the News appendix.
- For the currently known bugs/misfeatures (known errors) see the problems
appendix.
- For a list of developers and other contributors, see the Credits
appendix.
New features/bug fixes history is in the news appendix in the manual.
For the currently known bugs/misfeatures (known errors) see the bugs
appendix in the manual.
For examples of SQL and benchmarking information see the bench
directory.
The manual mentioned above can be found in the Docs directory. The
manual is available in the following formats: as plain ASCII text in
Docs/manual.txt, in HTML format in Docs/manual_toc.html, as GNU Info in
Docs/mysql.info and as PostScript in Docs/manual.ps.
MySQL is brought to you by the MySQL team at MySQL AB
For a list of developers and other contributors, see the Credits appendix
in the manual.
A local copy of the MySQL Reference Manual can be found in the Docs
directory in GNU Info format. You can also browse the manual online or
download it in any of several formats at the URL given earlier in this
file.
************************************************************
IMPORTANT:
Send bug (error) reports, questions and comments to the mailing list
at mysql@lists.mysql.com
Please use the 'mysqlbug' script when posting bug reports or questions
about MySQL. mysqlbug will gather some information about your system
and start your editor with a form in which you can describe your
problem. Bug reports might be silently ignored by the MySQL
maintainers if there is not a good reason included in the report as to
why mysqlbug has not been used. A report that says 'MySQL does not
work for me. Why?' is not considered a valid bug report.
The mysqlbug script can be found in the 'scripts' directory of the
distribution, that is '<where-you-installed-mysql>/scripts'.
Bug or error reports should be sent to http://bugs.mysql.com.
include/my_global.h
View file @
d7dc2f68
...
...
@@ -801,6 +801,7 @@ typedef off_t os_off_t;
#define socket_errno WSAGetLastError()
#define SOCKET_EINTR WSAEINTR
#define SOCKET_EAGAIN WSAEINPROGRESS
#define SOCKET_ETIMEDOUT WSAETIMEDOUT
#define SOCKET_EWOULDBLOCK WSAEWOULDBLOCK
#define SOCKET_ENFILE ENFILE
#define SOCKET_EMFILE EMFILE
...
...
@@ -808,6 +809,7 @@ typedef off_t os_off_t;
#define socket_errno sock_errno()
#define SOCKET_EINTR SOCEINTR
#define SOCKET_EAGAIN SOCEINPROGRESS
#define SOCKET_ETIMEDOUT SOCKET_EINTR
#define SOCKET_EWOULDBLOCK SOCEWOULDBLOCK
#define SOCKET_ENFILE SOCENFILE
#define SOCKET_EMFILE SOCEMFILE
...
...
@@ -817,6 +819,7 @@ typedef off_t os_off_t;
#define closesocket(A) close(A)
#define SOCKET_EINTR EINTR
#define SOCKET_EAGAIN EAGAIN
#define SOCKET_ETIMEDOUT SOCKET_EINTR
#define SOCKET_EWOULDBLOCK EWOULDBLOCK
#define SOCKET_ENFILE ENFILE
#define SOCKET_EMFILE EMFILE
...
...
include/violite.h
View file @
d7dc2f68
...
...
@@ -68,6 +68,8 @@ int vio_fastsend(Vio *vio);
int
vio_keepalive
(
Vio
*
vio
,
my_bool
onoff
);
/* Whenever we should retry the last read/write operation. */
my_bool
vio_should_retry
(
Vio
*
vio
);
/* Check that operation was timed out */
my_bool
vio_was_interrupted
(
Vio
*
vio
);
/* Short text description of the socket for those, who are curious.. */
const
char
*
vio_description
(
Vio
*
vio
);
/* Return the type of the connection */
...
...
@@ -146,6 +148,7 @@ int vio_close_shared_memory(Vio * vio);
#define vio_fastsend(vio) (vio)->fastsend(vio)
#define vio_keepalive(vio, set_keep_alive) (vio)->viokeepalive(vio, set_keep_alive)
#define vio_should_retry(vio) (vio)->should_retry(vio)
#define vio_was_interrupted(vio) (vio)->was_interrupted(vio)
#define vio_close(vio) ((vio)->vioclose)(vio)
#define vio_peer_addr(vio, buf, prt) (vio)->peer_addr(vio, buf, prt)
#define vio_in_addr(vio, in) (vio)->in_addr(vio, in)
...
...
@@ -188,6 +191,7 @@ struct st_vio
my_bool
(
*
peer_addr
)(
Vio
*
,
char
*
,
uint16
*
);
void
(
*
in_addr
)(
Vio
*
,
struct
in_addr
*
);
my_bool
(
*
should_retry
)(
Vio
*
);
my_bool
(
*
was_interrupted
)(
Vio
*
);
int
(
*
vioclose
)(
Vio
*
);
void
(
*
timeout
)(
Vio
*
,
unsigned
int
which
,
unsigned
int
timeout
);
void
*
ssl_arg
;
...
...
ndb/src/mgmsrv/MgmtSrvr.cpp
View file @
d7dc2f68
...
...
@@ -2501,10 +2501,7 @@ MgmtSrvr::startBackup(Uint32& backupId, int waitCompleted)
case
GSN_NODE_FAILREP
:{
const
NodeFailRep
*
const
rep
=
CAST_CONSTPTR
(
NodeFailRep
,
signal
->
getDataPtr
());
#ifdef VM_TRACE
ndbout_c
(
"Node %d failed"
,
rep
->
failNo
);
#endif
if
(
rep
->
failNo
==
nodeId
||
if
(
NodeBitmask
::
get
(
rep
->
theNodes
,
nodeId
)
||
waitCompleted
==
1
)
return
1326
;
// wait for next signal
...
...
ndb/src/ndbapi/SignalSender.cpp
View file @
d7dc2f68
...
...
@@ -250,14 +250,22 @@ SignalSender::execNodeStatus(void* signalSender,
// node shutdown complete
s
->
header
.
theVerId_signalNumber
=
GSN_NF_COMPLETEREP
;
NFCompleteRep
*
rep
=
(
NFCompleteRep
*
)
s
->
getDataPtrSend
();
rep
->
blockNo
=
0
;
rep
->
nodeId
=
0
;
rep
->
failedNodeId
=
nodeId
;
rep
->
unused
=
0
;
rep
->
from
=
0
;
}
else
{
// node failure
s
->
header
.
theVerId_signalNumber
=
GSN_NODE_FAILREP
;
NodeFailRep
*
rep
=
(
NodeFailRep
*
)
s
->
getDataPtrSend
();
rep
->
failNo
=
nodeId
;
rep
->
failNo
=
0
;
rep
->
masterNodeId
=
0
;
rep
->
noOfNodes
=
1
;
NodeBitmask
::
clear
(
rep
->
theNodes
);
NodeBitmask
::
set
(
rep
->
theNodes
,
nodeId
);
}
ss
->
m_jobBuffer
.
push_back
(
s
);
...
...
sql-common/client.c
View file @
d7dc2f68
...
...
@@ -602,7 +602,7 @@ net_safe_read(MYSQL *mysql)
DBUG_PRINT
(
"error"
,(
"Wrong connection or packet. fd: %s len: %d"
,
vio_description
(
net
->
vio
),
len
));
#ifdef MYSQL_SERVER
if
(
vio_
errno
(
net
->
vio
)
==
SOCKET_EINTR
)
if
(
vio_
was_interrupted
(
net
->
vio
)
)
return
(
packet_error
);
#endif
/*MYSQL_SERVER*/
end_server
(
mysql
);
...
...
sql/net_serv.cc
View file @
d7dc2f68
...
...
@@ -759,7 +759,7 @@ my_real_read(NET *net, ulong *complen)
net
->
error
=
2
;
/* Close socket */
net
->
report_error
=
1
;
#ifdef MYSQL_SERVER
net
->
last_errno
=
(
interrupted
?
ER_NET_READ_INTERRUPTED
:
net
->
last_errno
=
(
vio_was_interrupted
(
net
->
vio
)
?
ER_NET_READ_INTERRUPTED
:
ER_NET_READ_ERROR
);
#endif
goto
end
;
...
...
vio/vio.c
View file @
d7dc2f68
...
...
@@ -50,6 +50,7 @@ void vio_reset(Vio* vio, enum enum_vio_type type,
vio
->
fastsend
=
vio_fastsend
;
vio
->
viokeepalive
=
vio_keepalive
;
vio
->
should_retry
=
vio_should_retry
;
vio
->
was_interrupted
=
vio_was_interrupted
;
vio
->
vioclose
=
vio_close_pipe
;
vio
->
peer_addr
=
vio_peer_addr
;
vio
->
in_addr
=
vio_in_addr
;
...
...
@@ -69,6 +70,7 @@ void vio_reset(Vio* vio, enum enum_vio_type type,
vio
->
fastsend
=
vio_fastsend
;
vio
->
viokeepalive
=
vio_keepalive
;
vio
->
should_retry
=
vio_should_retry
;
vio
->
was_interrupted
=
vio_was_interrupted
;
vio
->
vioclose
=
vio_close_shared_memory
;
vio
->
peer_addr
=
vio_peer_addr
;
vio
->
in_addr
=
vio_in_addr
;
...
...
@@ -88,6 +90,7 @@ void vio_reset(Vio* vio, enum enum_vio_type type,
vio
->
fastsend
=
vio_ssl_fastsend
;
vio
->
viokeepalive
=
vio_ssl_keepalive
;
vio
->
should_retry
=
vio_ssl_should_retry
;
vio
->
was_interrupted
=
vio_ssl_was_interrupted
;
vio
->
vioclose
=
vio_ssl_close
;
vio
->
peer_addr
=
vio_ssl_peer_addr
;
vio
->
in_addr
=
vio_ssl_in_addr
;
...
...
@@ -105,6 +108,7 @@ void vio_reset(Vio* vio, enum enum_vio_type type,
vio
->
fastsend
=
vio_fastsend
;
vio
->
viokeepalive
=
vio_keepalive
;
vio
->
should_retry
=
vio_should_retry
;
vio
->
was_interrupted
=
vio_was_interrupted
;
vio
->
vioclose
=
vio_close
;
vio
->
peer_addr
=
vio_peer_addr
;
vio
->
in_addr
=
vio_in_addr
;
...
...
vio/vio_priv.h
View file @
d7dc2f68
...
...
@@ -39,6 +39,8 @@ int vio_ssl_fastsend(Vio *vio);
int
vio_ssl_keepalive
(
Vio
*
vio
,
my_bool
onoff
);
/* Whenever we should retry the last read/write operation. */
my_bool
vio_ssl_should_retry
(
Vio
*
vio
);
/* Check that operation was timed out */
my_bool
vio_ssl_was_interrupted
(
Vio
*
vio
);
/* When the workday is over... */
int
vio_ssl_close
(
Vio
*
vio
);
/* Return last error number */
...
...
vio/viosocket.c
View file @
d7dc2f68
...
...
@@ -196,6 +196,15 @@ vio_should_retry(Vio * vio __attribute__((unused)))
}
my_bool
vio_was_interrupted
(
Vio
*
vio
__attribute__
((
unused
)))
{
int
en
=
socket_errno
;
return
(
en
==
SOCKET_EAGAIN
||
en
==
SOCKET_EINTR
||
en
==
SOCKET_EWOULDBLOCK
||
en
==
SOCKET_ETIMEDOUT
);
}
int
vio_close
(
Vio
*
vio
)
{
int
r
=
0
;
...
...
vio/viossl.c
View file @
d7dc2f68
...
...
@@ -184,6 +184,15 @@ vio_ssl_should_retry(Vio * vio __attribute__((unused)))
}
my_bool
vio_ssl_was_interrupted
(
Vio
*
vio
__attribute__
((
unused
)))
{
int
en
=
socket_errno
;
return
(
en
==
SOCKET_EAGAIN
||
en
==
SOCKET_EINTR
||
en
==
SOCKET_EWOULDBLOCK
||
en
==
SOCKET_ETIMEDOUT
);
}
int
vio_ssl_close
(
Vio
*
vio
)
{
int
r
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment