Freeing a port used with ServerSocket
I have a server running in a thread that I want to start start and stop. After stopping it and restarting it, I get the following exception: "Address in use: JVM_Bind". I do not understand why.
When I start, I do this:
serverSocket = new ServerSocket(PORT);
socket = serverSocket.accept();
accept() blocks while it waits for a connection. However, when I want to stop, I interrupt the block and force the server to stop, like this:
// Close the streams in order to interrupt the thread
socket.getInputStream().close();
socket.getOutputStream().close();
interrupt();
socket.close();
socket = null;
serverSocket.close();
serverSocket = null;
After this, trying to start the server again on the same port gives me the address already in use exception.
How do I prevent this from happening?
Hmmmm, it appears that your socket is not getting closed because interrupt() throws an exception skipping the remaining code (including the socket.close()).
interrupt() is meant to be called from another thread to wake a sleeping thread. Calling it from the current thread won't really accomplish anything.
If you're trying to shut down the thread while it's blocked on the socket.accept(), you need to enclose the code in a try/catch block, catch InterruptedException, and call Thread.interrupt() from another thread.
Bob
Similar Messages
-
Issue with XML post when port used with server name
Hi Guys,
We are currently using an agent on our application servers which puts a server in "inservice standby" if the CPU load on the system goes above 75%. This agent is using an XML post on the CSM to achieve this and put the server back inservice using XML post as well.
Currently we are trying to use the same agent for another application which has a port number defined as well and it does not seem to work.
To give an example where it works:
serverfarm TEST
nat server
nat client TEST
real name BLABLA
inservice
The example where it does not work:
serverfarm TEST
nat server
nat client TEST
real name BLABLA 50000
When we get the server name via XML we see that CSM returns the name as BLABLA: 50000 however using the same in the script does not work.
Would someone know how to put the port number in an XML script so that the CSM understands which server need to be changed.
Thanks,
MurtazaIt would be some thing in line with the following example
<?xml version="1.0" ?>
The DTD for CSM XML will let you know what tags and attributes are available to use:
http://www.cisco.com/univercd/cc/td/doc/product/lan/cat6000/mod_icn/csm/csm4
_1_2/icn/xmldtd.htm
HTH
Syed -
I bought an iPhone 5 from the Apple store with a new Sprint contract in Sept. 2012. I would like to know if I port my number to T-mobile and pay off my Early Termination fee with Sprint, will my iPhone 5 will be unlocked to use with T-mobile network?
As Ethmoid says, it is still a CDMA phone as I told you earlier, and it will not work with t-mobile. Even if Sprint unlocked the phone, it would only unlock the GSM side for international use. They will not unlock the GSM side for domestic use in the US.
-
Can you configure a static port to use with certsrv.msc?
I am trying to use certsrv.msc to connect from my workstation to the CA for administration purposes. Workstation is Win7, CA is 2008 R2 Enterprise running Enterprise Subordinate on a dedicated box.
I configured a static DCOM port for certsvc by following this article, including bouncing the service and also rebooting the CA box:
http://social.technet.microsoft.com/wiki/contents/articles/1559.how-to-configure-a-static-dcom-port-for-ad-cs.aspx
The static port was opened in the firewall from my workstation to the CA. We also found that TCP 445 was required, so that has been opened as well, port 135 & other ports normally needed for autoenrollment should be open. Sniffing the firewall
showed that a random high numbered port that is not the static dcom port is being attempted - this is the only port showing dropped packets & no traffic on the static port.
I am wondering if there is a way to configure a static port for this high-level random port to use with certsrv.msc as I was able to do with the certsvc dcom port? I am trying to avoid having tens of thousands of network ports wide open going to my
CA... Thanks in advance!Hi Steve,
I am sorry that I wasn’t able to find references about restricting certificate services only use one port in the random port range.
However, we can configure RPC dynamic ports allocation to restrict port range. In the meantime, we should keep at least 100 ports open to keep necessary system services running.
More information for you:
How to configure RPC dynamic port allocation to work with firewalls
http://support.microsoft.com/kb/154596/en-us
Service overview and network port requirements for Windows
http://support.microsoft.com/kb/832017/en-au
Firewall Rules for Active Directory Certificate Services
http://blogs.technet.com/b/pki/archive/2010/06/25/firewall-roles-for-active-directory-certificate-services.aspx
Best Regards,
Amy Wang -
Can I conect iMac 2012 with thundelbolt to iMac 2008 mini display port use this iMac like second monitor.
This Apple article:
What are the requirements for TDM?
suggests that older iMac do not support Target Dispaly Mode. -
Can't connect to skype, get invalid port, using laptop with iphone as router
can't connect to skype, get invalid port, using laptop with iphone as router
can't connect to skype, get invalid port, using laptop with iphone as router
-
Does anyone know how to comunicate with a USB port using labview 6?
Does anyone know how to comunicate with a USB port using labview 6?
Unfortunately, there is no way to communicate directly with a USB port before LabVIEW 7.0 and VISA 3.0. With the new releases, there are functions called "VISA USB Control In" and "VISA USB Control Out" that give you direct access to a USB port.
You can definitely communicate with DAQ, Serial, or GPIB devices that are connected through a USB port, though. This is done seamlessly through the NI-DAQ, NI-Serial, and NI-488.2 drivers.
Luke S. -
Any way to communicate with Serial PORT using JavaScript
is there any way to communicate with Serial PORT using JavaScript ??
Dont tell me to do it in java because I need to this on client side not on server side.
such as when client pressed the button, a javascript function will be called and in that function I need to communicate with the serial port of that client... That action will not go to server side.Is there any way to send a string of bytes to the serial port from the client side ?
Just a button on the web page that sends out stuff to the comport.
I was hoping to do this using java script also .. -
Can the Gigabit Ethernet LAN Port be used with a Thunderbolt to Gigabit Ethernet adaptor and then to a Thunderbolt Hard Drive as a back up drive?
If you use ethernet to connect the two AirPort Extremes together, you'll have Gigabit speeds available at all of the ethernet ports on both routers.
If you connect the second AirPort Extreme using wireless only and configure the Extreme to "extend a wireless network", then the maximum speeds that the second router can attain will be limited to the capability of the wireless connection. So, if you connect at normal "n" wireless speeds of say 130 Mbps, that will be the maximum speed available at the ethernet ports on the second AirPort Extreme.
I think you can easily see the difference between Gigabit ethernet, which is 1000 Mbps compared to "n" wireless at 130 Mbps. Even if you can manage to connect at 5 GHz speeds for wireless, the max speed will be in the 300 Mbps range, more than 3 times slower than Gigabit ethernet. Normal "n" speeds will be about 7 times slower than ethernet.
For streaming high definition video and other demanding sources, you'll need as much bandwidth (speed) as you can get. Ethernet is always the best choice if you can possibly use it. And...there's no wireless interference on an ethernet connection.
Message was edited by: Bob Timmons -
How to open specific port using java program
Hello,
I want to open ,close port using java comm.plz help me how can i do it.is it possible
by using java program.later i want to use that specific port to accept the server socket connection .plz
help me.i try this java program.*but it get block in accept method*.tht mean i m not able to make connection with port.
import java.sql.SQLException;
import java.io.IOException;
import java.net.ServerSocket;
import java.util.logging.Level;
import java.util.logging.Logger;
class MakeConn
public final static int PORT = 7788;
public static java.net.Socket clientSocket = null;
public static java.io.PrintWriter pw = null; // socket output stream
public static java.io.BufferedReader br = null;
public static ServerSocket server_socket;
public static void main(String[] args) throws SQLException
try {
server_socket = new ServerSocket(PORT);
clientSocket = server_socket.accept();
System.out.println("CLIENT>>>" + clientSocket);
br = new java.io.BufferedReader(new java.io.InputStreamReader(clientSocket.getInputStream()));
pw = new java.io.PrintWriter(clientSocket.getOutputStream(), true);
String message = br.readLine().trim();
System.out.println("message is"+message);
pw.close(); // close everything
br.close();
clientSocket.close();
catch (Exception ex) {
ex.printStackTrace();
} -
I have a external usb mouse I have been using with my HP laptop for over two years now and it has always worked without a problem. This week it suddenly stopped working properly. Often it does not work when I click on it even after several tries. Due to disability with hands it is too hard to use the pointer on the pad on my laptop. I need to use a mouse.
I am not sure if it is a bug from a recent software update or an issue with my snyaptics program (which is what I suspect). I am older and my computer knowledge is not so good anymore.
What can I do to diagnose to see where the problem is. I cannot afford to take my laptop in for service right now.
ThanksHi Richard61,
Thank you for your post, I will do my best to assist you.
I understand that your mouse is not working properly. Here is a document onTroubleshooting Mouse Problems (Windows 7, Vista, XP). Have you tried a different usb mouse? Have you tried it in a different USB port?
It is not the synaptics program as that has to do with Touchpads, not the mouse. If you believe it was an update, you may be able to do a system restore back to when it was working correctly. You could try running MS Fix It to help resolve issues and look for updates. You should also run the HP Support Assistant to aid with updates and resolve issues. Please let me know how it turns out.
Sparkles1
I work on behalf of HP
Please click “Accept as Solution ” if you feel my post solved your issue, it will help others find the solution.
Click the “Kudos, Thumbs Up" on the bottom right to say “Thanks” for helping! -
I want to set up the Time Machine and I would love to use the Time
Capsule but since I already have a wireless router I need suggestions on
what other
external disks Apple could recommend to use with the Time Machine and
how to configure that disk.
A complication that I need to resolve is the fact that I am using Vmware
Fusion to be able to use Windows on my Mac. Now it seems that Time
Machine is not backing up my files
on that virtual Windows without additional configuration and my question
is whether you can advise me here or whether this is only a matter for
the Fusion virtual machine.If you want to use Time Capsule you can.. you simply bridge it and plug it into the existing router.. wireless can be either turned off or used to reinforce the existing wireless.. eg use 5ghz in the TC which is much faster than your 2.4ghz.
You can also use a NAS.. many brands available but the top brands are synology, qnap and netgear readynas series. These will all do Time Machine backups although how well always depends on Apple sticking to a standard. There are cheaper ones.. I bought a single disk zyxel which was rebadged and sold through my local supermarket. It actually works very well for TM at least on Snow Leopard. Major changes were made in Lion and again ML so do not instantly think it will work on later versions. I haven't tried it yet with those versions.
Any external drive can be plugged into the mac. Use the one with the fastest connection or cheapest price according to your budget. USB2 drives are cheap and plentiful. But no where near as fast as USB3 or FW800. So just pick whichever suits the ports on your Mac. Interesting Apple finally moved to USB3 on their latest computers.
TM should exclude the VM partition file.. it is useless backing it up from Mac OS side.. and will slow TM as it needs to backup that partition everyday for no purpose.. TM cannot see the files inside it to backup just the changes.
You need to backup windows from windows. Use MSbackup to external drive.. if you have pro or ultimate versions you can backup to network drive. But MSbackup is a dog.. at least until the latest version it cannot restore the partition without first loading windows. There are about a zillion backup software versions for windows.. look up reviews and buy one which works for you. I use a free one Macrium Reflect which does full disk backups and is easy to restore.. to do incremental backups though you have to pay for it. -
X1 and USB Port Replicator with digital video - hangs system
Hi
with the X1 to help with docking it everyday at the office I have a USB Port replicator with digital video. I am not using the digital video but the USB ports, head phone and mics plus ethernet.
When I plug it in it detects it OK, I then installed the software. But after reboot it looks to stall when logging into windows, screen flickers back and forth and locks up the operating system. I unlplug it and reboot and window is working fine.
Note as I mentioned I am not using the digital output but instead using an external monitor via the display port on the back of the laptop.
Also its is very slow to boot (Lenovo bios splash screen is there for about a minute)
I have gone into the bios and turned off all other bootable devices just leaving the laptops hard drive.
As a work around I have removed the software and I am getting the basic functionality of the port replicator, but not the ethernet.
I have run the update manager but does not appear to show a need to update the drivers.
Model X1 (1293-CTO)
Windows 7Hi, I have this same exact problem.
Video (anything from youtube to downloaded shows, movies) will freeze for 5-7 seconds at a time. The sound continues to play while the video is 'frozen', and the video resumes after that.
It will happen on its own, with no bumping, but it is more prone to happen if I do something like increase the volume within the media player.
Any suggestions are much appreciated! -
The time capsule was used with my prior Mac Pro laptop that unfortunately had the home vault active on it.
My new Mac Book Pro does not have home vault open. But I am unable to back up my new MAC pro laptop because it says there is not enough storage space available. Therefore, t there any way to just completely delete all the old backup data out of my Time Capsule from my prior Mac Laptop?
When I go into the time capsule - it shows me NOTHING as being in the backup datas. So, I don't know where to begin to delete all the old data off the
time Capsule and start with a completely empty machine.Therefore, t there any way to just completely delete all the old backup data out of my Time Capsule from my prior Mac Laptop?
Here is how to do this:
Open Macintosh HD > Applications > Utilities > AirPort Utility
Click Manual Setup
Click the Disks icon at the top of the AirPort Utility window
Click the Disks tab below the icons
Click Erase
The "Quick Erase" option will only take a moment or two
Now you can backup your MacBook Pro. If you connect an Ethernet cable from the MBP to one of the LAN <-> ports on the TC, the first backup will go 3-5 times faster than wireless.
Once you have the first backup done, you can use wireless for subsequent backups since they will only take a few minutes -
One or more ports used by the Compute Emulator are currently used by other processes
Environment:
VS 2012 Professional
Azure SDK October 2012
Windows 8
I lost the last few days of my life struggling with a weird issue in the emulator. I just ran out of options and I would really appreciate if someone could help me figure out what's wrong.
I am trying to debug a service package from Visual Studio 2012. It's really just about any package -- even the ones generated from a Windows Azure Cloud Service VS template. Any. The VS debugger starts, and in parallel there's "Starting the Windows Azure Debugging
Environment" dialog which shows "Deploying service package to the Windows Azure compute emulator..." message.
The progress bar shown in the dialog gets stuck for a long time (possibly even for an hour or longer!) at some 60% and then the following error message is shown:
"One or more ports used by the Compute Emulator are currently used by other processes. To resolve this, please see MSDN documentation at http://msdn.microsoft.com/en-us/library/hh472164.aspx"
There doesn't seem to be anything else listening on the ports mentioned on the above MSDN page. I did nevertheless try to re-map devfabric and agent ports by specifying different values in the .config files mentioned on the page, but that did not help.
What I also tried and did not help:
- reinstalled SDK, IIS Express, Local DB
- reinstalled VS 2012 (yes, I got that desperate)
- tried using IIS instead
- used SysInternals TcpView to check if there are any conflicts
- rebooted the machine: the deployment works initially (*once*), and the subsequent deployments fail (!)
- tried to kill all Azure-related processes in memory and restart debugging
- tried looking into log files under the user directory (dftmp\...); no errors in *any* log
- tried looking into Event Viewer logs (Azure-related and in general); no errors either
Since the conflict seems to be related to my current network settings, below is my IP
configuration. I am behind a router and I have DHCP activated, but again that should not matter since none of that has changed in the last few years (and the emulator did work until few days ago).
C:\WINDOWS\system32>ipconfig /all
Windows IP Configuration
Host Name . . . . . . . . . . . . : MYCOMPUTER
Primary Dns Suffix . . . . . . . :
Node Type . . . . . . . . . . . . : Hybrid
IP Routing Enabled. . . . . . . . : No
WINS Proxy Enabled. . . . . . . . : No
Ethernet adapter Ethernet:
Connection-specific DNS Suffix . :
Description . . . . . . . . . . . : Marvell Yukon 88E8056 PCI-E Gigabit Ethernet Controller
Physical Address. . . . . . . . . : 32-AB-30-66-BC-56
DHCP Enabled. . . . . . . . . . . : Yes
Autoconfiguration Enabled . . . . : Yes
IPv6 Address. . . . . . . . . . . : 2a01:e35:8a3a:9970:edd9:b989:b67a:5a8a(Preferred)
Temporary IPv6 Address. . . . . . : 2a01:e35:8a3a:9970:dc7a:4fe6:62a5:e54a(Preferred)
Link-local IPv6 Address . . . . . : fe80::edd9:b989:b67a:5a8a%12(Preferred)
IPv4 Address. . . . . . . . . . . : 192.168.0.1(Preferred)
Subnet Mask . . . . . . . . . . . : 255.255.255.0
Lease Obtained. . . . . . . . . . : Sunday, December 16, 2012 21:26:30 PM
Lease Expires . . . . . . . . . . : Tuesday, December 18, 2012 09:26:14 AM
Default Gateway . . . . . . . . . : fe80::224:d4ff:fea2:9722%12
192.168.0.254
DHCP Server . . . . . . . . . . . : 192.168.0.254
DHCPv6 IAID . . . . . . . . . . . : 253808432
DHCPv6 Client DUID. . . . . . . . : 00-01-00-01-18-1B-EE-4D-20-CF-30-66-BC-46
DNS Servers . . . . . . . . . . . : 192.168.0.254
NetBIOS over Tcpip. . . . . . . . : Enabled
Tunnel adapter isatap.{7A96B710-3107-48B9-A7B2-2F261DDD91AD}:
Media State . . . . . . . . . . . : Media disconnected
Connection-specific DNS Suffix . :
Description . . . . . . . . . . . : Microsoft ISATAP Adapter
Physical Address. . . . . . . . . : 00-00-00-00-00-00-00-E0
DHCP Enabled. . . . . . . . . . . : No
Autoconfiguration Enabled . . . . : Yes
Tunnel adapter Local Area Connection* 11:
Connection-specific DNS Suffix . :
Description . . . . . . . . . . . : Teredo Tunneling Pseudo-Interface
Physical Address. . . . . . . . . : 00-00-00-00-00-00-00-E0
DHCP Enabled. . . . . . . . . . . : No
Autoconfiguration Enabled . . . . : Yes
IPv6 Address. . . . . . . . . . . : 2001:0:5ef5:79fb:1caf:12ff:a75c:5668(Preferred)
Link-local IPv6 Address . . . . . : fe80::1caf:12ff:a75c:5668%14(Preferred)
Default Gateway . . . . . . . . . :
NetBIOS over Tcpip. . . . . . . . : Disabled
Below are the Azure SDK emulator configuration files, unmodified (as created by the SDK installation).
DevFC.exe.config
<configuration>
<configSections>
<section name="DevFCSettings" type="System.Configuration.NameValueSectionHandler" />
</configSections>
<!-- The following are options related to the SimulatorSetup -->
<DevFCSettings>
<add key="StartMACAddress" value="00155D201928" />
<add key="EndMACAddress" value="155D20193C" />
<add key="StartIPAddress" value="192.168.0.20" />
<add key="EndIPAddress" value="192.168.0.40" />
<add key="DipPoolStartIPAddress" value="127.255.0.0" />
<add key="DipPoolEndIPAddress" value="127.255.255.255" />
<add key="VipPoolStartIPAddress" value="127.0.0.1" />
<add key="VipPoolEndIPAddress" value="127.0.0.255" />
<add key="DefaultGateway" value="192.168.0.1" />
<add key="SubnetMask" value="255.255.255.0" />
<add key="InternalSwitchName" value="{F3C577E3-8256-4bb9-8F54-256F84E227DE}-DevFabricSwitch" />
<add key="InternalSwitchPortName" value="{F3C577E3-8256-4bb9-8F54-256F84E227DE}-DevFabricHostSwitchPort" />
<add key="InternalEthernetNICName" value="{F3C577E3-8256-4bb9-8F54-256F84E227DE}-DevFabricEthernetNIC" />
<add key="InternalEthernetPortMACAddress" value="00155D201927" />
<add key="InternalEthernetPortIPAddress" value="192.168.0.2" />
<add key="InternalEthernetPortSubnetMask" value="255.255.255.0" />
<add key="StorageRoot" value="DFTemp" />
<add key="LogsDirName" value="DevFCLogs" />
<add key="DynamicPortAllocStart" value="20000" />
<add key="ManagementServicePort" value="15095" />
<add key="RepositoryServicePort" value="15096" />
<add key="AgentCallbackPort" value="15097" />
<add key="AgentPort" value="15098" />
<add key="PxeResponderPort" value="15100" />
</DevFCSettings>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>
</startup>
</configuration>
DFAgent.exe.config
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>
</startup>
<appSettings>
<add key="AgentMAC" value="00155D201927"/>
<add key="AgentIP" value="192.168.0.2"/>
<add key="EnableActiveNotification" value="false"/>
<add key="StorageRoot" value="C:\DFTemp"/>
<add key="CopyFilesInStartRole" value="false"/>
<add key="LogsDirName" value="DFAgentLogs" />
<add key="EnableFileLog" value="true" />
<add key="AgentPort" value="15098" />
<add key="RuntimePort" value="15099" />
<add key="AgentCallbackPort" value="15097" />
</appSettings>
</configuration>
DFService.exe.config
<configuration>
<configSections>
<section
name="dfservice"
allowExeDefinition="MachineToLocalUser"
type="Microsoft.ServiceHosting.Tools.DevelopmentFabric.DfServiceConfigurationSection, DfService, Version=1.8.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
/>
</configSections>
<dfservice
ManagementServicePort="15095"
RepositoryServicePort="15096"
/>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>
</startup>
</configuration>
Finally, here's what TcpView shows while the emulator is stuck:
devenv.exe 3736 TCP MYCOMPUTER 7240 localhost 15095 SYN_SENT
devenv.exe 3736 TCP MYCOMPUTER 7245 localhost 15095 SYN_SENT
svchost.exe 4332 TCP MYCOMPUTER 7438 MYCOMPUTER 0 LISTENING
System 4 TCP MYCOMPUTER 10000 MYCOMPUTER 0 LISTENING
System 4 TCP MYCOMPUTER 10001 MYCOMPUTER 0 LISTENING
System 4 TCP MYCOMPUTER 10002 MYCOMPUTER 0 LISTENING
DevFC.exe 4380 TCP MYCOMPUTER 15095 MYCOMPUTER 0 LISTENING
DevFC.exe 4380 TCP MYCOMPUTER 15096 MYCOMPUTER 0 LISTENING
DevFC.exe 4380 TCP MYCOMPUTER 15097 MYCOMPUTER 0 LISTENING
DFAgent.exe 14472 TCP MYCOMPUTER 15098 MYCOMPUTER 0 LISTENING
DFAgent.exe 14472 TCPV6 mycomputer 15098 mycomputer 0 LISTENING
DFAgent.exe 14472 TCPV6 mycomputer 15098 mycomputer 6399 ESTABLISHED
System 4 TCP MYCOMPUTER 15099 MYCOMPUTER 0 LISTENING
System 4 TCPV6 mycomputer 15099 mycomputer 0 LISTENING
DevFC.exe 4380 TCP MYCOMPUTER 15100 MYCOMPUTER 0 LISTENING
Thanks in advance for help!
▼
▲
▼
▲Hi,
Unfortunately I already tried all kinds of re-installs (the full list is in my original message). The only one remaining is the reinstall of Windows 8 itself, which I would really like to avoid.
What I find really strange is the time it takes for the above error message to appear. It's like one hour or even more (never measured exactly, I left the computer running).
What kind of a timeout is that? I would expect that, if ports are really used by some other application, I get the message in less than a minute (seconds, actually). To me this looks like the emulator itself for some reason believes there's a problem with
some port while in reality there isn't.
I'll eventually contact Microsoft Support, thanks for the suggestion.
▼
▲
Maybe you are looking for
-
I'm just wondering what step I should start with to resolve this. There's probably a library issue but I'm not really sure where to start with that. I'm pretty sure that the voice over is what is giving the error with itunes because when I try to dow
-
Have used Aperture for some time - at some point this stopped working - not sure when workflow: click photo and elect to use the external editor (Photoshop Elements 9) Copy of the photo is created in Aperture with the "O" badge and I am rolled out to
-
Need Help Connecting Crystal XI to Progress Database
Post Author: leomclaughlin CA Forum: Data Connectivity and SQL I am new to Crystal Reports and need some help figuring out how to connect to my database. I am using Crystal Reports XI and the database is Progress ver 91 (at least as best I can tell,
-
Trouble: oracle 8i on pentium 4
i think that this bug has been quite well-known. there are some workarounds to solve this, like renaming sym..dll to something else... but it doesn't seem to work fine... so i am just wondering if there is any workarounds to install 8i on pentium 4.
-
PDE-PXC002 Program unit exception aborted due to unhandled exception (10050
Im working on performing a new query when a user changes the value of a text item and then keys to the next item. Its very much in experimental stage atm but this is the code: BEGIN CLEAR_BLOCK(NO_VALIDATE); IF :system.block_status = 'CHANG