<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Rui Miguel Feio</title>
	<atom:link href="http://www.ruifeio.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.ruifeio.com</link>
	<description>Sharing knowledge with the world</description>
	<lastBuildDate>Sat, 05 Dec 2009 15:50:41 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>PHP parameter session.gc_maxlifetime is lower that cookie validity configured in phpMyAdmin</title>
		<link>http://www.ruifeio.com/2009/12/05/php-parameter-session-gc_maxlifetime-is-lower-that-cookie-validity-configured-in-phpmyadmin/</link>
		<comments>http://www.ruifeio.com/2009/12/05/php-parameter-session-gc_maxlifetime-is-lower-that-cookie-validity-configured-in-phpmyadmin/#comments</comments>
		<pubDate>Sat, 05 Dec 2009 11:55:22 +0000</pubDate>
		<dc:creator>Rui Miguel Feio</dc:creator>
				<category><![CDATA[PhpMyAdmin]]></category>
		<category><![CDATA[WAMP]]></category>

		<guid isPermaLink="false">http://www.ruifeio.com/?p=432</guid>
		<description><![CDATA[If you have installed a new MySQL version you may be getting the following warning message:
Your PHP parameter session.gc_maxlifetime is lower that cookie validity configured in phpMyAdmin, because of this, your login will expire sooner than configured in phpMyAdmin.
To solve this issue we first need to check what the session.gc_maxlifetime value is in php.ini and [...]]]></description>
			<content:encoded><![CDATA[<p>If you have installed a new MySQL version you may be getting the following warning message:</p>
<p><code style="font-size: 12px">Your PHP parameter session.gc_maxlifetime is lower that cookie validity configured in phpMyAdmin, because of this, your login will expire sooner than configured in phpMyAdmin.</code></p>
<p>To solve this issue we first need to check what the <code style="font-size: 12px">session.gc_maxlifetime</code> value is in <code style="font-size: 12px">php.ini</code> and what the <code style="font-size: 12px">$cfg['LoginCookieValidity']</code> is in config.inc.php.</p>
<p><strong>Example:</strong></p>
<p>1. php.ini</p>
<p><code style="font-size: 12px">session.gc_maxlifetime = 1440</code></p>
<p>2. config.inc.php</p>
<p><code style="font-size: 12px">$cfg['LoginCookieValidity'] = 1800;</code></p>
<p>Now, we only need to make these two values the same. For the sake of this example, we will change the value of <code style="font-size: 12px">$cfg['LoginCookieValidity']</code> to 1440.</p>
<p>After saving the changes we need to restart the services to make them effective.</p>
<p><strong>Notes:</strong></p>
<p>1.The php.ini file can be found on the php folder.</p>
<p>2. The config.inc.php file can be found on the phpmyadmin folder.</p>
<hr/>
<p>If you&#8217;re interested in learning more about PhpMyAdmin then check out the book &#8220;<a href="http://www.ruifeio.com/mastering-phpmyadmin" onclick="return TrackClick('http%3A%2F%2Fwww.ruifeio.com%2Fmastering-phpmyadmin','Mastering+PhpMydmin+for+Effective+MySQL+Management')">Mastering PhpMydmin for Effective MySQL Management</a>&#8220;.</p>
<hr/>
<div class="fullcircle-social-links" style="display: block;"></div><div style="clear: both;"></div>]]></content:encoded>
			<wfw:commentRss>http://www.ruifeio.com/2009/12/05/php-parameter-session-gc_maxlifetime-is-lower-that-cookie-validity-configured-in-phpmyadmin/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>&#8220;Screw it, let´s do it&#8221; &#8211; Book Review</title>
		<link>http://www.ruifeio.com/2009/11/14/screw-it-lets-do-it-book-review/</link>
		<comments>http://www.ruifeio.com/2009/11/14/screw-it-lets-do-it-book-review/#comments</comments>
		<pubDate>Sat, 14 Nov 2009 18:09:22 +0000</pubDate>
		<dc:creator>Rui Miguel Feio</dc:creator>
				<category><![CDATA[Books]]></category>
		<category><![CDATA[Business]]></category>

		<guid isPermaLink="false">http://www.ruifeio.com/?p=414</guid>
		<description><![CDATA[I do believe that almost everyone in the world has heard of Sir Richard Branson or at least the Virgin brand. You might hate the man or love him, but the truth is that he´s one of a kind.
When I first saw the book &#8220;Screw it, let´s do it&#8221; I felt compelled to buy it, [...]]]></description>
			<content:encoded><![CDATA[<div class="wp-caption alignleft" style="width: 210px"><a href="http://www.ruifeio.com/screw-it-lets-do-it" onclick="return TrackClick('http%3A%2F%2Fwww.ruifeio.com%2Fscrew-it-lets-do-it','Screw+it+lets+do+it')" onclick="return TrackClick('http%3A%2F%2Fwww.ruifeio.com%2Fscrew-it-lets-do-it','Screw+it+lets+do+it')" onclick="return TrackClick('http%3A%2F%2Fwww.ruifeio.com%2Fscrew-it-lets-do-it','Screw+it+lets+do+it')" onclick="return TrackClick('http%3A%2F%2Fwww.ruifeio.com%2Fscrew-it-lets-do-it','Screw+it+lets+do+it')" onclick="return TrackClick('http%3A%2F%2Fwww.ruifeio.com%2Fscrew-it-lets-do-it','http%3A%2F%2Fwww.ruifeio.com%2Fscrew-it-lets-do-it')"><img title="http://www.ruifeio.com/screw-it-lets-do-it" onclick="return TrackClick('http%3A%2F%2Fwww.ruifeio.com%2Fscrew-it-lets-do-it','Screw+it+lets+do+it')" onclick="return TrackClick('http%3A%2F%2Fwww.ruifeio.com%2Fscrew-it-lets-do-it','Screw+it+lets+do+it')" onclick="return TrackClick('http%3A%2F%2Fwww.ruifeio.com%2Fscrew-it-lets-do-it','Screw+it+lets+do+it')" onclick="return TrackClick('http%3A%2F%2Fwww.ruifeio.com%2Fscrew-it-lets-do-it','Screw+it+lets+do+it')" onclick="return TrackClick('http%3A%2F%2Fwww.ruifeio.com%2Fscrew-it-lets-do-it','http%3A%2F%2Fwww.ruifeio.com%2Fscrew-it-lets-do-it')" src="http://static.bookdepository.co.uk/assets/images/book/medium/9780/7535/9780753513187.jpg" alt="Author: Sir Richard Branson" width="200" height="215" /></a><p class="wp-caption-text">Author: Sir Richard Branson</p></div>
<p>I do believe that almost everyone in the world has heard of Sir Richard Branson or at least the Virgin brand. You might hate the man or love him, but the truth is that he´s one of a kind.</p>
<p>When I first saw the book &#8220;<a title="Screw it lets do it" href="http://www.ruifeio.com/screw-it-lets-do-it" onclick="return TrackClick('http%3A%2F%2Fwww.ruifeio.com%2Fscrew-it-lets-do-it','Screw+it+lets+do+it')" onclick="return TrackClick('http%3A%2F%2Fwww.ruifeio.com%2Fscrew-it-lets-do-it','Screw+it+lets+do+it')" onclick="return TrackClick('http%3A%2F%2Fwww.ruifeio.com%2Fscrew-it-lets-do-it','Screw+it+lets+do+it')" onclick="return TrackClick('http%3A%2F%2Fwww.ruifeio.com%2Fscrew-it-lets-do-it','Screw+it+lets+do+it')" onclick="return TrackClick('http%3A%2F%2Fwww.ruifeio.com%2Fscrew-it-lets-do-it','http%3A%2F%2Fwww.ruifeio.com%2Fscrew-it-lets-do-it')" target="_blank">Screw it, let´s do it</a>&#8221; I felt compelled to buy it, but reason told me to read its synopsis first. Although you may think that I have changed my mind about buying this book, you are wrong! Reading the synopsis increased my level of curiosity about it.</p>
<p>I read this book in a couple of days and I thought it´s a fantastic book. Sir Richard Branson is able to capture your attention and get you motivated to achieve your goals.</p>
<p>The message that the book tries to pass the reader is that one must do things for fun and not for money. As strange as this may seem, I do think this is an undeniable truth. We don&#8217;t want to feel miserables every day of our lives just for the sake of money. That is too much of a price to pay!</p>
<p>As we go through some of Richard Branson&#8217;s life episodes, he tries to explain some important business lessons that has made him one of the most riches men on Earth.</p>
<p>&#8220;<a title="Screw it lets do it" href="http://www.ruifeio.com/screw-it-lets-do-it" onclick="return TrackClick('http%3A%2F%2Fwww.ruifeio.com%2Fscrew-it-lets-do-it','Screw+it+lets+do+it')" onclick="return TrackClick('http%3A%2F%2Fwww.ruifeio.com%2Fscrew-it-lets-do-it','Screw+it+lets+do+it')" onclick="return TrackClick('http%3A%2F%2Fwww.ruifeio.com%2Fscrew-it-lets-do-it','Screw+it+lets+do+it')" onclick="return TrackClick('http%3A%2F%2Fwww.ruifeio.com%2Fscrew-it-lets-do-it','Screw+it+lets+do+it')" onclick="return TrackClick('http%3A%2F%2Fwww.ruifeio.com%2Fscrew-it-lets-do-it','http%3A%2F%2Fwww.ruifeio.com%2Fscrew-it-lets-do-it')" target="_blank">Screw it, let&#8217;s do it</a>&#8221; is no doubt a must read book.</p>
<hr />
<p>Buy &#8220;Screw it, let&#8217;s do it&#8221; from <a title="Screw it lets do it" href="http://www.ruifeio.com/screw-it-lets-do-it" onclick="return TrackClick('http%3A%2F%2Fwww.ruifeio.com%2Fscrew-it-lets-do-it','Screw+it+lets+do+it')" onclick="return TrackClick('http%3A%2F%2Fwww.ruifeio.com%2Fscrew-it-lets-do-it','Screw+it+lets+do+it')" onclick="return TrackClick('http%3A%2F%2Fwww.ruifeio.com%2Fscrew-it-lets-do-it','Screw+it+lets+do+it')" onclick="return TrackClick('http%3A%2F%2Fwww.ruifeio.com%2Fscrew-it-lets-do-it','Screw+it+lets+do+it')" onclick="return TrackClick('http%3A%2F%2Fwww.ruifeio.com%2Fscrew-it-lets-do-it','http%3A%2F%2Fwww.ruifeio.com%2Fscrew-it-lets-do-it')" target="_blank">BookDepository</a> and get free shipping world wide.</p>
<hr />
<p><strong>Book Description</strong></p>
<p>In 1968, a young man named Richard Branson began an improbable journey. From opening a tiny record store, called Virgin Records, on the second floor of a building in London, Richard went on to become the head of one of the world’s most universally recognized and respected groups of companies. The Virgin name has become a truly global brand and Richard its charismatic public face. His story is awe-inspiring, breathtaking, and often just plain fun. From airlines to mobile phones, round-the-world balloon flights to space travel, a Caribbean island and a South African game reserve, it’s clear that Richard Branson is having the time of his life. Some people say that everything Richard touches turns to gold. But the truth is, behind the fun-loving persona lies a dedicated and dynamic businessman who has sweated buckets for every dollar he’s made. He has taken his share of falls, just like all of us, and picked himself up and gotten right back into the game. And throughout it all—working, succeeding, failing, trying again—Richard Branson has indeed been having fun. He hasn’t done it all alone. He has learned from and been inspired by many remarkable people, from politicians, scientists, writers, and co-workers to his own mother and father. Screw It, Let’s Do It shares some of Richard Branson’s lessons in life and business that range from good, practical advice to more esoteric inspirations—all of which have made the head of Virgin Group what he is today, including:</p>
<p>Just do it—Believe whatever you want to achieve can be achieved.<br />
Have fun—Have a positive outlook, and when something stops being fun, move on.<br />
Be innovative—The system is not sacred:Think creatively.<br />
Have sex appeal—Create excitement in everything you do.<br />
Do some good—Change the world, even in a small way.</p>
<p>It’s hard to read about his journey and not catch his motivational bug and zest for life—to act positively, to change for the better and join him in his enthusiastic and life-affirming visions for the world. Screw It, Let’s Do It also presents Branson’s vision for the future, a future in which we each fully embrace the responsibility to do no harm to our environment, to hold our hands out to those in need, to work in unity for the great and pressing concerns of our time. It’s up to successful companies may like Virgin to lead the way in a more socially responsible—and in fact, wholly revolutionary—approach to business.<br />
Engaging, funny, utterly absorbing, and above all, inspiring, Screw It, Let’s Do It serves as a template for personal and business growth, a guidebook for anyone who wants to grab life by the horns and take a wonderful ride, living—as Richard Branson surely does— life to its very fullest. </p>
<hr />
<p>Buy &#8220;Screw it, let&#8217;s do it&#8221; from <a title="Screw it lets do it" href="http://www.ruifeio.com/screw-it-lets-do-it" onclick="return TrackClick('http%3A%2F%2Fwww.ruifeio.com%2Fscrew-it-lets-do-it','Screw+it+lets+do+it')" onclick="return TrackClick('http%3A%2F%2Fwww.ruifeio.com%2Fscrew-it-lets-do-it','Screw+it+lets+do+it')" onclick="return TrackClick('http%3A%2F%2Fwww.ruifeio.com%2Fscrew-it-lets-do-it','Screw+it+lets+do+it')" onclick="return TrackClick('http%3A%2F%2Fwww.ruifeio.com%2Fscrew-it-lets-do-it','Screw+it+lets+do+it')" onclick="return TrackClick('http%3A%2F%2Fwww.ruifeio.com%2Fscrew-it-lets-do-it','http%3A%2F%2Fwww.ruifeio.com%2Fscrew-it-lets-do-it')" target="_blank">BookDepository</a> and get free shipping world wide.</p>
<hr />
<div class="fullcircle-social-links" style="display: block;"></div><div style="clear: both;"></div>]]></content:encoded>
			<wfw:commentRss>http://www.ruifeio.com/2009/11/14/screw-it-lets-do-it-book-review/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Notice:  Undefined index: message in /home/example.php on line 9</title>
		<link>http://www.ruifeio.com/2009/09/28/notice-undefined-index-message-in-hometestexample-php-on-line-3/</link>
		<comments>http://www.ruifeio.com/2009/09/28/notice-undefined-index-message-in-hometestexample-php-on-line-3/#comments</comments>
		<pubDate>Mon, 28 Sep 2009 20:25:46 +0000</pubDate>
		<dc:creator>Rui Miguel Feio</dc:creator>
				<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://www.ruifeio.com/?p=390</guid>
		<description><![CDATA[If  you&#8217;re getting this message on PHP this is due to your PHP error reporting settings not being set correctly.
You can suppress the Notice warnings by changing the error reporting settings on PHP.ini (permanent change) or adding an extra line to your PHP script.
Changing PHP.ini:
Changing your PHP.ini makes the change permanent and available to every [...]]]></description>
			<content:encoded><![CDATA[<p>If  you&#8217;re getting this message on PHP this is due to your PHP error reporting settings not being set correctly.</p>
<p>You can suppress the Notice warnings by changing the error reporting settings on PHP.ini (permanent change) or adding an extra line to your PHP script.</p>
<p><strong>Changing PHP.ini:</strong></p>
<p>Changing your PHP.ini makes the change permanent and available to every PHP script you run.</p>
<ol>
<li>Edit your PHP.ini file</li>
<li>Locate the line that has <em>error_reporting</em> without the <em>;</em> in the beginning (ex: <em>error_reporting = E_ALL</em>)</li>
<li>Change this to <em>error_reporting = E_ALL &amp; ~E_NOTICE</em></li>
<li>Save PHP.ini</li>
</ol>
<p><strong>Adding line to your script:</strong></p>
<p>Just add the following line to the beginning of your script:</p>
<p><em>error_reporting (E_ALL ^ E_NOTICE);</em></p>
<p><strong>Explanation:</strong></p>
<p><em>error_reporting = E_ALL &amp; ~E_NOTICE</em> tells the system to show all errors and warnings except those for notices.</p>
<div class="fullcircle-social-links" style="display: block;"></div><div style="clear: both;"></div>]]></content:encoded>
			<wfw:commentRss>http://www.ruifeio.com/2009/09/28/notice-undefined-index-message-in-hometestexample-php-on-line-3/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>phpMyAdmin root with no password message</title>
		<link>http://www.ruifeio.com/2009/09/17/phpmyadmin-root-with-no-password-message/</link>
		<comments>http://www.ruifeio.com/2009/09/17/phpmyadmin-root-with-no-password-message/#comments</comments>
		<pubDate>Thu, 17 Sep 2009 11:35:53 +0000</pubDate>
		<dc:creator>Rui Miguel Feio</dc:creator>
				<category><![CDATA[PhpMyAdmin]]></category>
		<category><![CDATA[WAMP]]></category>

		<guid isPermaLink="false">http://www.ruifeio.com/?p=380</guid>
		<description><![CDATA[After installing WAMP Server it is common when you first access phpMyAdmin to get the following message:
&#8220;Your configuration file contains settings (root with no password) that correspond to the default MySQL privileged account. Your MySQL server is running with this default, is open to intrusion, and you really should fix this security hole by setting [...]]]></description>
			<content:encoded><![CDATA[<p>After installing WAMP Server it is common when you first access phpMyAdmin to get the following message:</p>
<p>&#8220;Your configuration file contains settings (root with no password) that correspond to the default MySQL privileged account. Your MySQL server is running with this default, is open to intrusion, and you really should fix this security hole by setting a password for user &#8216;.root&#8217;.&#8221;</p>
<p><strong>To correct this security issue you need to do the following:</strong></p>
<ol>
<li>Go to <em>phpMyAdmin</em></li>
<li>Select the <em>Privileges</em> tab</li>
<li>Locate the user &#8220;<em>root</em>&#8221; that has <em>localhost </em>for a host</li>
<li>Edit the root user privileges by clicking on the corresponding <em>Edit Privileges</em> button</li>
<li>On the <em>Change Password</em> section insert the desired password and press <em>Go</em></li>
<li>You should now have at the top of the screen the message: &#8220;<em>The password for &#8216;root&#8217;@'localhost&#8217; was changed successfully.</em>&#8220;</li>
<li>Now you need to edit file <em>config.inc.php</em> normally located at <em>C:\wamp\apps\phpmyadmin3.2.0.1</em> (note that the version indication may  vary)</li>
<li>Locate <em>$cfg['Servers'][$i]['auth_type'] = &#8216;config&#8217;;</em> and change from <em>config </em>to <em>cookie </em>so that you get a login window every time you access phpMyAdmin</li>
<li>Locate <em>$cfg['blowfish_secret'] = &#8216;  &#8216;;</em> line. If you don&#8217;t have one add it to your <em>config.inc.php</em> file</li>
<li>Add a secret passphrase to <em>$cfg['blowfish_secret'] = &#8216;  &#8216;;</em> for example: <em>$cfg['blowfish_secret'] = &#8217;secret_pass&#8217;;</em></li>
<li>Save your changes</li>
<li>Go to the WAMPServer and select <em>Restart All Services</em></li>
<li>Once all the services have been restarted go to <em>phpMyAdmin</em> and enter the username root and your password to access phpMyAmdin</li>
</ol>
<p><strong>Notes:</strong></p>
<ol>
<li>The <em>blowfish_secret</em> passphrase should not be the same as the root password.</li>
<li>If you don&#8217;t add a <em>$cfg['blowfish_secret']</em> line to the <em>config.inc.php</em> file, when you access phpMyAdmin you&#8217;ll get the message: &#8220;<em>The configuration file now needs a secret passphrase (blowfish_secret).</em>&#8220;</li>
</ol>
<hr/>
<p>If you&#8217;re interested in learning more about PhpMyAdmin then check out the book &#8220;<a href="http://www.ruifeio.com/mastering-phpmyadmin" onclick="return TrackClick('http%3A%2F%2Fwww.ruifeio.com%2Fmastering-phpmyadmin','Mastering+PhpMydmin+for+Effective+MySQL+Management')">Mastering PhpMydmin for Effective MySQL Management</a>&#8220;.</p>
<hr/>
<div class="fullcircle-social-links" style="display: block;"></div><div style="clear: both;"></div>]]></content:encoded>
			<wfw:commentRss>http://www.ruifeio.com/2009/09/17/phpmyadmin-root-with-no-password-message/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Move a dataset that is in Linklist to a different volume</title>
		<link>http://www.ruifeio.com/2009/08/27/move-a-dataset-that-is-in-linklist-to-a-different-volume/</link>
		<comments>http://www.ruifeio.com/2009/08/27/move-a-dataset-that-is-in-linklist-to-a-different-volume/#comments</comments>
		<pubDate>Thu, 27 Aug 2009 18:02:15 +0000</pubDate>
		<dc:creator>Rui Miguel Feio</dc:creator>
				<category><![CDATA[MVS]]></category>

		<guid isPermaLink="false">http://www.ruifeio.com/?p=364</guid>
		<description><![CDATA[Sometimes we come across the need of moving to a different volume a dataset that is in Linklist.
We must remember that moving a dataset does not change the list of datasets defined to the current concatenation in any way &#8211; the dataset name remains the same -. The system will continue to use the current [...]]]></description>
			<content:encoded><![CDATA[<p>Sometimes we come across the need of moving to a different volume a dataset that is in Linklist.</p>
<p>We must remember that moving a dataset does not change the list of datasets defined to the current concatenation in any way &#8211; the dataset name remains the same -. The system will continue to use the current Linklist set as is and will not rebuild the concatenation.</p>
<p>To make a change to any dataset (ex: move) that is part of an active linklist set, you have to first remove it from the linklist set.  When it is no longer part of an active concatenation, then you can modify it as you like and then add it back in.</p>
<p><strong>So, in order to move a Linklisted dataset to a different volume you would have to:</strong></p>
<p>1. Define a new linklist set without the dataset you wish to recatalog.<br />
2. Activate/implement it.<br />
3. Move your dataset.<br />
4. Define a linklist set with the dataset you&#8217;ve moved.<br />
5. Activate/implement this new set.</p>
<p><strong>Here&#8217;s an example of the commands you would use:</strong></p>
<p>1. P LLA<br />
2. SETPROG LNKLST,UNALLOCATE<br />
3. Create a PROGT1 containing the LINKLIST members EXCEPT the one we want to move and rename LNKLST0x to LNKLST0x + 1<br />
4. SET PROG=T1<br />
5. SETPROG LNKLST,UPDATE,JOBNAME=*<br />
6. Move the dataset into a different volume.<br />
7. Create a PROGT2 containing the LINKLIST members INCLUDING the one we&#8217;ve moved to a different volume and increment the LNKLSTxx value (LNKLST0x + 1).<br />
8. SET PROG=T2<br />
9. S LLA,SUB=MSTR<br />
10. SETPROG LNKLST,ALLOCATE<br />
11. SETPROG LNKLST,UPDATE,JOBNAME=*</p>
<p><strong>Here&#8217;s a practical example:</strong></p>
<p>Current Linklist set: <em>LNKLST00</em><br />
Dataset name: <em>SYS2.MOVE.EXAMPLE</em><br />
Original volume: <em>TST001</em><br />
Destination volume: <em>TST002</em><br />
Current PROGxx: <em>PROGT0<br />
</em></p>
<p><strong>Commands:</strong></p>
<ol>
<li>P LLA</li>
<li>SETPROG LNKLST,UNALLOCATE</li>
<li>Create a PROGT1 containing all the LINKLIST  datasets <span style="text-decoration: underline;">with the exception</span> of SYS2.MOVE.EXAMPLE, and rename all instances of LNKLST00 to LNKLST01.</li>
<li>SET PROG=T1</li>
<li>SETPROG LNKLST,UPDATE,JOBNAME=*</li>
<li>Move dataset SYS2.MOVE.EXAMPLE from volume TST001 to volume TST002.</li>
<li>Create a PROGT2 containing all the LINKLIST datasets <span style="text-decoration: underline;">including</span> SYS2.MOVE.EXAMPLES and rename all instances of LNKLST01 to LNKLST02.</li>
<li>SET PROG=T2</li>
<li>S LLA,SUB=MSTR</li>
<li>SETPROG LNKLST,ALLOCATE</li>
<li>SETPROG LNKLST,UPDATE,JOBNAME=*</li>
</ol>
<div class="fullcircle-social-links" style="display: block;"></div><div style="clear: both;"></div>]]></content:encoded>
			<wfw:commentRss>http://www.ruifeio.com/2009/08/27/move-a-dataset-that-is-in-linklist-to-a-different-volume/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Linklist update &#8211; Why we need to stop LLA and unallocate the LNKLST</title>
		<link>http://www.ruifeio.com/2009/08/26/linklist-update-why-we-need-to-stop-lla-and-unallocate-the-lnklst/</link>
		<comments>http://www.ruifeio.com/2009/08/26/linklist-update-why-we-need-to-stop-lla-and-unallocate-the-lnklst/#comments</comments>
		<pubDate>Wed, 26 Aug 2009 17:57:11 +0000</pubDate>
		<dc:creator>Rui Miguel Feio</dc:creator>
				<category><![CDATA[MVS]]></category>

		<guid isPermaLink="false">http://www.ruifeio.com/?p=352</guid>
		<description><![CDATA[A couple of months ago I&#8217;ve written a post on how to dynamically update the Linklist but some questions have been risen on why we need to stop the LLA and unallocate the Linklist.
Each Linklist dataset has an ENQ from both XCFAS and LLA. An ENQ on a LNKLST dataset prevents that dataset from being [...]]]></description>
			<content:encoded><![CDATA[<p>A couple of months ago I&#8217;ve written a post on <a title="How to dynamically update the Linklist" href="http://www.ruifeio.com/2009/06/29/update-linklist-dynamically/" onclick="return TrackClick('http%3A%2F%2Fwww.ruifeio.com%2F2009%2F06%2F29%2Fupdate-linklist-dynamically%2F','How+to+dynamically+update+the+Linklist')">how to dynamically update the Linklist</a> but some questions have been risen on why we need to stop the LLA and unallocate the Linklist.</p>
<p>Each Linklist dataset has an ENQ from both XCFAS and LLA. An ENQ on a LNKLST dataset prevents that dataset from being altered as long as it is a member of an active LNKLST. So, in order to be able to make changes to the active Linklist you first need to remove those ENQs.</p>
<p>To be able to remove the LLA ENQs you need to stop the LLA. The only impact that stopping the LLA has in the system is loss of performance until you re-start the LLA.</p>
<p>As per the XCFAS ENQs to remove them you need to issue the SETPROG LNKLST UNALLOCATE command. Unallocate indicates that you want to undo all existing allocations obtained while processing active LNKLST sets.</p>
<p>Once you remove the ENQs you are then able to change the Linklist. Now, bear in mind that although you have removed the ENQs the modules are still in Linklist. No abend will come out of this.</p>
<p>Once you are finished with the Linklist changes, you then restart the LLA and ALLOCATE the Linklist.</p>
<p>The UPDATE command indicates that the system is to update an address space so that a specified job or jobs associated with that space can use the current LNKLST set. If the job is using another LNKLST set when the current LNKLST set is activated, it will continue to use the original LNKLST set until it completes operations. When the job completes and restarts, it then uses the datasets defined in the new currently active LNKLST set.</p>
<div class="fullcircle-social-links" style="display: block;"></div><div style="clear: both;"></div>]]></content:encoded>
			<wfw:commentRss>http://www.ruifeio.com/2009/08/26/linklist-update-why-we-need-to-stop-lla-and-unallocate-the-lnklst/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Displaying Page Dataset Information</title>
		<link>http://www.ruifeio.com/2009/08/20/displaying-page-dataset-information/</link>
		<comments>http://www.ruifeio.com/2009/08/20/displaying-page-dataset-information/#comments</comments>
		<pubDate>Thu, 20 Aug 2009 13:35:43 +0000</pubDate>
		<dc:creator>Rui Miguel Feio</dc:creator>
				<category><![CDATA[MVS]]></category>

		<guid isPermaLink="false">http://www.ruifeio.com/?p=330</guid>
		<description><![CDATA[As you may know, Page datasets are defined on the IEASYSxx member of the Parmlib but if you want to avoid the hassle of checking this member or if you would like to obtain more information about them, you can use the following MVS commands to display Page Dataset information:
1. Command: /D ASM
Displays information about [...]]]></description>
			<content:encoded><![CDATA[<p>As you may know, Page datasets are defined on the IEASYSxx member of the Parmlib but if you want to avoid the hassle of checking this member or if you would like to obtain more information about them, you can use the following MVS commands to display Page Dataset information:</p>
<p><strong>1. Command: /D ASM</strong></p>
<p>Displays information about the page data sets the system is currently using and the status of the PAGEDEL command.</p>
<p><em>Example:</em></p>
<p><code style="font-size: 12px;">RESPONSE=TST1<br />
IEE200I 08.14.54 DISPLAY ASM 182<br />
TYPE     FULL STAT   DEV  DATASET NAME<br />
PLPA      28%   OK  8833  SYS1.TST1.PAGE.PLPA<br />
COMMON     0%   OK  863B  SYS1.TST1.PAGE.COMMON<br />
LOCAL      1%   OK  880E  SYS1.TST1.PAGE.LOCAL1<br />
LOCAL      2%   OK  880F  SYS1.TST1.PAGE.LOCAL2<br />
PAGEDEL COMMAND IS NOT ACTIVE</code></p>
<p><strong>2. Command: /D ASM,PLPA</strong></p>
<p>Displays  information about the PLPA page data set.</p>
<p><em>Example:</em></p>
<p><code style="font-size: 12px;">RESPONSE=TST1<br />
IEE200I 08.19.40 DISPLAY ASM 236<br />
TYPE     FULL STAT   DEV  DATASET NAME<br />
PLPA      28%   OK  8833  SYS1.TST1.PAGE.PLPA</code></p>
<p><code style="font-size: 12px;">VOLSER  DEVTYP        SIZE        USED       AVAIL      ERRORS<br />
TST1P1  3390        53,999      15,508      38,491           0</code></p>
<p><strong>3. Command: /D ASM,LOCAL</strong></p>
<p>Displays information about all local page data sets.</p>
<p><em>Example:</em></p>
<p><code style="font-size: 12px;">RESPONSE=TST1<br />
IEE200I 08.23.00 DISPLAY ASM 264<br />
TYPE     FULL STAT   DEV  DATASET NAME<br />
LOCAL      1%   OK  880E  SYS1.TST1.PAGE.LOCAL1<br />
LOCAL      2%   OK  880F  SYS1.TST1.PAGE.LOCAL2</code></p>
<p><strong>4. Command: /D ASM,COMMON</strong></p>
<p>Displays information about the common page data set.</p>
<p><em>Example:</em></p>
<p><code style="font-size: 12px;">RESPONSE=TST1<br />
IEE200I 08.28.25 DISPLAY ASM 305<br />
TYPE     FULL STAT   DEV  DATASET NAME<br />
COMMON     0%   OK  863B  SYS1.TST1.PAGE.COMMON</code></p>
<p><code style="font-size: 12px;">VOLSER  DEVTYP        SIZE        USED       AVAIL      ERRORS<br />
TST1P0  3390        89,999          42      89,957           0</code></p>
<p><strong>5. Command: /D ASM,PAGE=page_dataset_name</strong></p>
<p>Displays information about page data sets.</p>
<p><em>Example:</em></p>
<p>page_dataset_name<em> = </em><code style="font-size: 12px;">SYS1.TST1.PAGE.LOCAL1</code></p>
<p>/D ASM,PAGE=SYS1.TST1.PAGE.LOCAL1</p>
<p><em>Returns:</em></p>
<p><code style="font-size: 12px;">RESPONSE=TST1<br />
IEE200I 08.31.01 DISPLAY ASM 328<br />
TYPE     FULL STAT   DEV  DATASET NAME<br />
LOCAL      1%   OK  880E  SYS1.TST1.PAGE.LOCAL1</code></p>
<p><code style="font-size: 12px;">VOLSER  DEVTYP        SIZE        USED       AVAIL      ERRORS<br />
TST1P2  3390       599,399      11,242     588,157           0</code></p>
<div class="fullcircle-social-links" style="display: block;"></div><div style="clear: both;"></div>]]></content:encoded>
			<wfw:commentRss>http://www.ruifeio.com/2009/08/20/displaying-page-dataset-information/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to display the Linklist concatenation</title>
		<link>http://www.ruifeio.com/2009/08/19/how-to-display-the-linklist-concatenation/</link>
		<comments>http://www.ruifeio.com/2009/08/19/how-to-display-the-linklist-concatenation/#comments</comments>
		<pubDate>Wed, 19 Aug 2009 17:57:30 +0000</pubDate>
		<dc:creator>Rui Miguel Feio</dc:creator>
				<category><![CDATA[MVS]]></category>

		<guid isPermaLink="false">http://www.ruifeio.com/?p=321</guid>
		<description><![CDATA[Whoever works with mainframes knows that to be able to o know what the Linklist concatenation is is one of the most important things in the job.
There is a very simple MVS command for the effect:
D PROG,LNKLST
Here&#8217;s an example of what this command returns:
RESPONSE=TST1
CSV470I 12.29.52 LNKLST DISPLAY 888
LNKLST SET LNKLST01 LNKAUTH=LNKLST
ENTRY  APF  VOLUME  DSNAME
1     [...]]]></description>
			<content:encoded><![CDATA[<p>Whoever works with mainframes knows that to be able to o know what the Linklist concatenation is is one of the most important things in the job.</p>
<p>There is a very simple MVS command for the effect:</p>
<p>D PROG,LNKLST</p>
<p>Here&#8217;s an example of what this command returns:</p>
<p><code style="font-size: 12px;">RESPONSE=<span style="color: #339966;">TST1</span><br />
CSV470I 12.29.52 LNKLST DISPLAY 888<br />
LNKLST SET <span style="color: #0000ff;">LNKLST01</span> LNKAUTH=LNKLST<br />
ENTRY  APF  VOLUME  DSNAME<br />
1       <span style="color: #ff0000;">A</span> <span style="color: #800080;">TST1R1</span> SYS2.LINKLIB<br />
2       A TST1R1 SYS1.MIGLIB<br />
3       A </code><code style="font-size: 12px;">TST1R1 </code><code style="font-size: 12px;">SYS1.CSSLIB<br />
4       A </code><code style="font-size: 12px;">TST1R1 </code><code style="font-size: 12px;">SYS2.LINKLIB<br />
5       A </code><code style="font-size: 12px;">TST1R1 </code><code style="font-size: 12px;">SYS1.LINKLIB<br />
6 </code><code style="font-size: 12px;">TST1R1 </code><code style="font-size: 12px;">SYS1.SORTLIB<br />
...</code></p>
<p><strong>Explanation:</strong></p>
<p><code style="font-size: 12px;"><span style="color: #339966;">TST1</span></code> is the LPAR name</p>
<p><code style="font-size: 12px;"><span style="color: #0000ff;">LNKLST01</span> </code>indicates the Linklist set currently active and in use by the system</p>
<p><code style="font-size: 12px;"><span style="color: #ff0000;">A</span></code> indicates that the dataset is also in APF list</p>
<p><code style="font-size: 12px;"><span style="color: #800080;">TST1R1</span> </code>indicates the volume where the dataset is allocated</p>
<p><strong>Note:</strong></p>
<p>The Linklist concatenation is defined in the PROGxx member of the PARMLIB.</p>
<div class="fullcircle-social-links" style="display: block;"></div><div style="clear: both;"></div>]]></content:encoded>
			<wfw:commentRss>http://www.ruifeio.com/2009/08/19/how-to-display-the-linklist-concatenation/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Unmounting a file system with the Remount parameter</title>
		<link>http://www.ruifeio.com/2009/08/19/unmounting-a-file-system-with-the-remount-parameter/</link>
		<comments>http://www.ruifeio.com/2009/08/19/unmounting-a-file-system-with-the-remount-parameter/#comments</comments>
		<pubDate>Wed, 19 Aug 2009 13:35:29 +0000</pubDate>
		<dc:creator>Rui Miguel Feio</dc:creator>
				<category><![CDATA[USS]]></category>

		<guid isPermaLink="false">http://www.ruifeio.com/?p=311</guid>
		<description><![CDATA[UNMOUNT FILESYSTEM(SYS2.OMVS.EXAMPLE) REMOUNT
We all know that the UNMOUNT command removes a file system from the file system hierarchy but when we use the REMOUNT parameter with the UNMOUNT command we may be introducing confusion in some minds.
Unmounting a file system and remounting it? Makes no sense?
Well that may be so, but in fact if we [...]]]></description>
			<content:encoded><![CDATA[<p>UNMOUNT FILESYSTEM(SYS2.OMVS.EXAMPLE) REMOUNT</p>
<p>We all know that the UNMOUNT command removes a file system from the file system hierarchy but when we use the REMOUNT parameter with the UNMOUNT command we may be introducing confusion in some minds.</p>
<p>Unmounting a file system and remounting it? Makes no sense?</p>
<p>Well that may be so, but in fact if we look at what the REMOUNT parameter does it makes perfect sense.</p>
<p>In fact, the REMOUNT parameter tells the system that after the unmount is completed the system should mount the file system again but this time changing its mount mode. That is, if the file system was in READ only mode, then it should be remounted with READ/WRITE mode or if the file system was mounted with READ/WRITE mode, then it should be remounted with READ only mode.</p>
<p><strong>Example 1:</strong></p>
<p>File system name: SYS2.OMVS.EXAMPLE</p>
<p>Mount mode: RDWR (Read/Write mode)</p>
<p>When we issue the command UNMOUNT FILESYSTEM(SYS2.OMVS.EXAMPLE) REMOUNT we tell the system that we wish to change the mount mode of the file system to READ only mode. The system then unmounts the file system and remounts it with READ only mode.</p>
<p><strong>Example 2:</strong></p>
<p>File system name: SYS2.OMVS.EXAMPLE</p>
<p>Mount mode: READ</p>
<p>When we issue the command UNMOUNT FILESYSTEM(SYS2.OMVS.EXAMPLE) REMOUNT we tell the system that we wish to change the mount mode of the file system to READ/WRITE (RDWR) mode. The system then unmounts the file system and remounts it with READ/WRITE mode.</p>
<div class="fullcircle-social-links" style="display: block;"></div><div style="clear: both;"></div>]]></content:encoded>
			<wfw:commentRss>http://www.ruifeio.com/2009/08/19/unmounting-a-file-system-with-the-remount-parameter/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>MVS command to change the state of an Exit routine</title>
		<link>http://www.ruifeio.com/2009/08/19/mvs-command-to-change-the-state-of-an-exit-routine/</link>
		<comments>http://www.ruifeio.com/2009/08/19/mvs-command-to-change-the-state-of-an-exit-routine/#comments</comments>
		<pubDate>Wed, 19 Aug 2009 12:44:01 +0000</pubDate>
		<dc:creator>Rui Miguel Feio</dc:creator>
				<category><![CDATA[MVS]]></category>

		<guid isPermaLink="false">http://www.ruifeio.com/?p=303</guid>
		<description><![CDATA[Sometimes we find it necessary either to inactivate an active exit routine or the other way around. In order to achieve this, we need to use the MVS command:
/SETPROG EXIT,MODIFY,EXITNAME=exit_name,MODNAME=mod_name,STATE=active_inactive
Example:
/SETPROG EXIT,MODIFY,EXITNAME=SYS.IEFACTRT,MODNAME=IEFACTRT,STATE=INACTIVE
Other parameters:
JOBNAME=jobname – The job(s) name(s) for which this exit routine is to get control. If some other job calls the exit, this exit routine [...]]]></description>
			<content:encoded><![CDATA[<p>Sometimes we find it necessary either to inactivate an active exit routine or the other way around. In order to achieve this, we need to use the MVS command:</p>
<p>/SETPROG EXIT,MODIFY,EXITNAME=exit_name,MODNAME=mod_name,STATE=active_inactive</p>
<p><strong>Example:</strong></p>
<p>/SETPROG EXIT,MODIFY,EXITNAME=SYS.IEFACTRT,MODNAME=IEFACTRT,STATE=INACTIVE</p>
<p><strong>Other parameters:</strong></p>
<p><em>JOBNAME=jobname</em> – The job(s) name(s) for which this exit routine is to get control. If some other job calls the exit, this exit routine does not get control. The default value is * which means all the jobs. The default for the MODIFY parameter is to leave the jobname unchanged.</p>
<div class="fullcircle-social-links" style="display: block;"></div><div style="clear: both;"></div>]]></content:encoded>
			<wfw:commentRss>http://www.ruifeio.com/2009/08/19/mvs-command-to-change-the-state-of-an-exit-routine/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
