2007-10-19 Fri
Last month I was threatened with police intervention after taking pictures of my two-year-old. Why? We were in what you might think of as analogous to an outdoor mall. It’s a former industrial complex that’s listed in the National Register of Historic Places. Today the area has been revitalized with restaurants and office space, a large greenspace in the middle, and an attractive manmade river and waterfall. Despite there being no signs to indicate such, security informed me that the owners of the space have prohibited photography in order to “protect the intellectual property of the architecture.”
I thought it was interesting that the security guard used the general term “intellectual property.” Most of the time when this happens, photographers are told they’re violating a copyright or trademark, but the terms are used interchangeably and inconsistently. Common understanding of those terms is pretty low, so they’re often misused in general. But it’s even more understandable in cases like this, since it usually doesn’t make much sense to try to apply either.
While copyright law does protect architecture for buildings built after 1990, the space I was in is made up of buildings that are more than 100 years old. Even if it was newer construction, 17 USC 1, Section 120 (a) of copyright law states:
Pictoral Representations Permitted - The copyright in a architectural work that has been constructed does not include the right to prevent the making, distributing, or public display of pictures, paintings, photographs, or other pictorial representations of the work, if the building in which the work is embodied is located in or ordinarily visible from a public place.
If you prefer a case study, try “Pictures of buildings do not violate trademark - Rock & Roll Hall of Fame & Museum v. Gentile Prods.,” 134 F.3d 749 (6th Cir. Ohio 1998). The court eventually decided that in that case, someone who was selling posters of the Rock ‘n Roll Hall of Fame was not infringing on the museum’s rights by doing so.
Unfortunately, the space I was in is private property, and that means the owners can make any absurd rule they like. The real absurdity though, is the provision in their policy that you can’t take pictures of the buildings, but you can take pictures of people. The security guard was unable to answer how I was supposed to take pictures of my family without there being a building behind them. I’ve tried to contact the management of the complex, but I’ve been unable to get a copy of the official policy or any response at all about my experience there.
Situations like this are an increasingly common problem for photographers. A few years ago, photographers who visited France found out that you couldn’t publish photos of the Eiffel Tower taken at night. That means even to put your vacation photos on your personal web site, you’d be asked to include the text, “Eclairage de la Tour Eiffel - Copyright Société Nouvelle d’Exploitation de la Tour Eiffel – Conception Pierre Bideau.”
Then there’s the Lone Cypress, a tree along California’s famous 17-Mile Drive. It’s probably the most infamous example of someone trying to exert ridiculous intellectual property rights. They must’ve made it sound like a good idea, though, because it seems that the idea of copyrighting trees is catching on.
Benjamin Ham, a photographer in Charleston, SC, is now defending himself for selling a picture called “Plantation Road.” Photos he took at Dixie Plantation in 2006 are now selling for thousands of dollars apiece. The plantation was left to the College of Charleston Foundation by John Henry Dick in 1995. They say Dick prohibited the sale of images of the property for commercial gain and that Ham is violating that.
The picture in question is of their “Avenue of Oaks,” a tree-lined drive leading to the plantation. If you think that sounds familiar, but you’ve never been to Dixie Plantation, it’s probably because there are oak-lined roads at historic plantation homes all over the South Carolina lowcountry, Georgia, and along Louisiana’s famed River Road. Sites that claim an “Avenue of Oaks” include St. Simons Island, GA; Boone Hall Plantation; Buckfield Plantation; Litchfield Plantation; South Boundary Road in Aiken, SC; and the aptly-named Oak Alley Plantation, just to name a few.
If it doesn’t make sense to trademark a generic term, then how can we consider it logical to claim a simple row of trees as proprietary?
In Canada this month, it’s about totem poles. You might guess that the creators of the 80-plus works of art in Duncan, British Columbia want a say in how photos of their works are used. But you’d be guessing wrong. It’s the city, without input from the artists, that is demanding you ask permission, again in order to “protect their copyright.” But if you listen to what the city has said about the situation, it’s pretty clear that, like the other cases, what it really comes down to is the city not wanting photographers to make money that they think they could claim instead, even if they hadn’t previously made any effort to do so.
But it’s not just a national or even international problem—it’s going virtual. Should you be allowed to sell someone a picture you took of the Sydney Opera House? And if so, should you be allowed to build that structure in Second Life?
Image Catalog, a stock photography web site, has attempted to deal with the issue of what photos it can accept by creating a list of places and companies that make these sorts of claims. Let’s play a game—2 points for each item on the list you’ve taken a picture of, a bonus point if you’ve posted it online. Half a point for each you’ve seen a photo of, particularly if it’s reasonable to suspect that it was published (print or web) without permission. Let me know how you do.
This is out of control. Stop telling photographers what they can capture, or soon you won’t be able to click a shutter without getting a signed waiver from everyone in the background, the owners of every building, the companies who made the clothes the people in the picture are wearing, and the manufacturers of every object in the picture. Good luck next time you take a shot of your buddies drinking beer at a baseball game.
Question: How to check instance parameter values in Oracle?
Answer: show parameter xyz
WRONG!
Answer: select value from v$parameter where name = ‘xyz’
WRONG!
These commands show the session level parameter values, which are separate from instance level parameters:
SQL> show parameter session_cached_cursors
NAME TYPE VALUE
------------------------------------ ----------- --------------------------------
session_cached_cursors integer 20
SQL> select value from v$parameter where name = 'session_cached_cursors';
VALUE
---------------------------------------------------------------------------------
20
V$SYSTEM_PARAMETER is the view which shows instance level parameters (and these are what all new sessions inherit)
SQL> select value from v$system_parameter where name = 'session_cached_cursors';
VALUE
--------------------------------------------------------------------------------
0
In this case the difference was due a logon trigger whcih did set session_cached_cursors based on v$session program name.
Note that there is another not widely known gotcha with parameters - multivalue parameters:
There are few parameters which can accept and hold multiple values at a time. For example, utl_file_dir and service_names.
From the following it seems that in my instance there’s a single parameter with multiple comma separated values:
SQL> select value from v$system_parameter where name = 'service_names';
VALUE
------------------------------------------------------------------------------------
WEB, HR, OE, MFG, ADMIN
Actually these values are treated as separate parameter values (of the same parameter name) in V$PARAMETER2 and V$SYSTEM_PARAMETER2:
SQL> select value from v$system_parameter2 where name = 'service_names';
VALUE
------------------------------------------------------------------------------------
WEB
HR
OE
MFG
ADMIN
So, in addition to well known V$PARAMETER, there’s V$PARAMETER2, V$SYSTEM_PARAMETER and V$SYSTEM_PARAMETER2 - and only V$SYSTEM_PARAMETER(2) show you the instance parameters.
And there’s more - V$SPPARAMETER, V$OBSOLETE_PARAMETER and V$PARAMETER_VALID_VALUES (introduced in 10.2) which all can be handy for diagnosing problems and for grilling people at interviews (*evil grin*).
Unlike all my other marvellous posts, this one doesn’t actually have a point - but hey it’s Friday evening in Singapore (or Saturday in Australia) already, so I wish you a happy, parameter-free weekend ;-)
A few databases got corrupted recently. Such as, disk holding the system tablespace data files got crashed, tables got dropped by mistakes, schema got dropped by mistakes, tablespace got dropped by mistakes (data files still exist). These are all data recovery without system, not system tablespace, it's the relative system dictionary rows of the dropped tables.
Why it's complex? It's due to the Oracle data file format. We can get the following dictionary information from the system tablespace.
1, Object ID2, Data Object ID3, Table Name4, Column information including order, types etc.
While from the user data files, we can get the following information.
1, Data Object ID2, Reocrd (column values, ......)
You can see that we need the system dictionary data to map the table to relative data object id. If we lost the system tablespace or get the tables dropped, we lost the relation map. By scanning the user data files, we can get the data and save it to files, but we don't know which table it is for each file, we need somebody who know the application well to do tell us the relation map. And without the system dictionary data, we have to verify the column order and column types manually if the recovery utility cannot identify them correctly, so it will take longer time than you expected.
When you create a table and drop it later, Oracle will leave a shadow data segment in the data files. When you move a table, Oracle will create a new data segment in different location, and leave another shadow data segment. When we scan whole the data files, all these will be identified out. In a really recovery case, customer said that there are maximum 400 tables in the tablespace, but finally we got 1500 data segments in the data files, it took my customer two weeks and three engineers to get the most of the data recovered and restored.
Now you should know, even you have the system tablespace, but there is no relative system dictionary data of the dropped objects, so for dropping recovery, it's a complex recovery, a recovery without system.
Related Posts
Leave New Comment(Current: 0)
Link: http://www.dbatools.net/experience/what_is_nosystem_recovery.html
最近国内的数据库不太平安, 首先是磁盘损坏, 刚好坏到了System表空间所在的盘, 当然这是没有System的恢复. 另外还有好多次误删操作引起的问题, 误删单个或几个表, 误删除一个用户, 误删除一整个表空间(数据文件还在), 这些也算是没有System的恢复. 为什么算?
在System表空间中, 我们可以找出以下信息: 表编号, 数据编号, 表名, 列名, 列类型. 丢了System文件, 当然是没有了这些信息了, 那么误删表, 用户和表空间时, 当然也将表的这些信息删除了, 虽然你的数据库是有一个System的表空间, 但没有这些方便恢复的信息, 也就是没有System的恢复了. 如果还保留有删除操作时的归档日志或联机日志, 则可以从这儿分解出表名和数据编号的对应关系, 则恢复要简单得多.
在数据文件中, 我们能找到什么呢? 我们只能找到: 数据编号和记录. 由于没有了System信息, 对于这种恢复, 只能扫描所有相应的数据文件, 将记录找出来. 有两个问题, 第一列的类型要猜测, 不准时要人工分析二进制数据回以确定, 因此恢复相当耗时; 第二恢复的结果只有数据文件, 没有办法告诉你, 这些记录是那个表的, 这一步需要懂应用的人来分析一个个生成的数据文件, 来进行人工匹配. 没有System的恢复, 确切地说, 不是指没有System表空间的恢复, 而是指没有相应System字典信息的恢复
希望这样的解释能让你清楚一些. 为什么说这个问题呢? 有一个人Drop了一个表空间后, 来找我恢复, 由于他不太懂Oracle, 不知道其中的复杂性, 当我告诉他这是没有System的恢复时, 他说他们有System啊, 包括他们的领导怎么都不想信我说的什么没有System的恢复. 在数据文件中有可能扫出比表的数目多得多的数据段, 因为有很多操作, 都会留下一个数据段, 例如建一个临时表, 再删除它, 这时在数据文件上还是留下了一段数据; 或者你移动表后, Oracle会在重组数据到新的地方, 但是旧的数据段还是存在的. 由于没有了System信息, 根本就不知道那个段上的数据是你想要的. 去年在一次国外的数据库恢复中, 原先以为有400个表的, 但实际扫描数据文件后, 发现了1500个数据段, 客户投入了3个人花了整整两个星期, 才只搞定主要的表的恢复.
因此当你的数据库大到不好备份时(这当然是不负责任的想法), 至少你得想办法定期拷贝备份System表空间的文件, 否则问题很严重, 比你想象的要严重, 因为很多老的系统都不容易找到对应用熟的人, 数据恢复出来了, 也不容易让应用重新跑起来. Good Luck.
相关文章 | Related Artiles
A lot of earlier created Oracle database did not configure the character set correctly in Asia, they choose US7ASCII, WE8DEC, WE8ISO8859P1 as the database character set. By default they just keep the NLS_LANG the same as database setting, and then load some Asia language data into the database, no problem under this configuration except when they choose Java language to develop the application. Just cannot get the Asia language displayed correctly.
I create a demo table in a WE8ISO8859P1 database, and test it with AnySQL utility ( a Java JDBC SQL utility, looks like Oracle SQL*Plus) under JRE 1.4 and JRE 1.6 by following two commands.
c:\jdk160\bin\java -Dfile.encoding=ISO-8859-1 -jar jlib\oasql.jar
c:\jdk142\bin\java -Dfile.encoding=ISO-8859-1 -jar jlib\oasql.jar
For JRE 1.6, it can display Asia language correctly.
ASQL> SELECT 'some chinese' as COL1 FROM DUAL;
COL1
----
<display correctly>
1 rows returned.
But it does not work for JRE 1.4, and works only for console base program. Someone asked how to get Oracle SQL Developer work correctly under this situation, but I have no idea of it.
Related Posts
Leave New Comment(Current: 0)
Link: http://www.dbatools.net/experience/java_jdbc_aisa_language.html
昨天中午休息,本想找个会议室睡个觉,无意中看到了写在墙上的一个涂鸦。涂鸦很简单只有文字“NoBody like change”,这让我忽然想起来很喜欢的一首歌,蝎子的wind of change。飘忽的口哨和慢节奏让它和蝎子其他的歌不一样,但歌词更棒。刚刚在百度上找到了2个翻译,一个是帖吧上面的scorpions:the wind of change,另外一个是知道上面的帮忙翻译一下scorpions乐队的《the wind of change 》的歌词,都比我翻译的好。
随后下班回家的路上和今天早上上班的路上一直都是在听这一首歌。我有这个习惯,一段时间内,比如一天、一个晚上,喜欢连续不停的听一首歌。把帽衫的帽子戴上匆忙的走在夜里的大街上,觉得自己是那么的不一样。穿过熙攘的路口听着她走在明媚的阳光里,也觉得自己是那么的不一样。虽然听了一遍又一遍,但自己写不出东西来,真想找找别人写的有关这首歌的文字。
视频网站是好的,很容易就看到了不少蝎子的视频,演唱会、MTV,有不少。P2P是好的,正在下老专辑和现场视频。打算多听听这个老牌的硬摇滚。
I will introduce you how to compare structure for different tables in different databases (ALL type) with the compare any column utility (Overview / Download). I create the following tables in three different databases for this demo.
-- dbchina
CREATE TABLE SALES_CN (COL1 NUMBER(10), COL2 NUMBER(12,2));
-- dbus
CREATE TABLE SALES_US (COL1 NUMBER(10), COL2 NUMBER(15,2));
-- dbother
CREATE TABLE SALES_OTHER (
COL1 NUMBER(10), COL2 NUMBER(15,2), COL3 DATE);
Then we need to write a configuration file, to tell this utility which tables are compared together, the minus char means the next line continues the previous.
ALL: -
sales_cn!sh@dbchina | -
sales_us!sh@dbus | -
sales_other!sh@dbother
Now we can run this utility with the following command.
companycol.pl -f all_demo.cfg
Then check the screen output or check the log file generated (with "-l" option).
Comparing structure of tables on different hosts ...
Tables
sales_cn sales_us sales_other
[MISMATCH] COL2 NUMBER(12,2) :
sales_cn!dbchina
[MISMATCH] COL2 NUMBER(15,2) :
sales_us!dbus sales_other!dbother
[MISSING ] COL3 :
sales_cn!dbchina sales_us!dbus
It seems not so easy to create the configuration file, right?
Related Posts
Leave New Comment(Current: 0)
Link: http://www.dbatools.net/mytools/compare_column_all_type.html
There’s been a lot of activity in the distributed database space in the last few weeks.
First was KFS (Kosmos FS) and now Powerset brings us Hadoop.
I’ve been thinking about this a lot recently but I think Java is the wrong language in which to design distributed databases (or any database in general).
I’m specifically talking about the on-disk persistence engine.
The main problem being implementations of sendfile, async and event IO, memory management, and implementation details such as access to mlock.
Java’s VM is one problematic area. Once the VM allocates memory it doesn’t want to let it go. Then there’s the problem that there’s no implementation of mlockall for Java. One could write an implementation in JNI but then you run into other problems with lack of access to other JNI libraries.
C just isn’t that hard. For a small and tight database implementation like GFS or Bigtable it seems to just make more sense to implement it in C.
Memcached and lighttpd are a great examples of what I’m talking about. They’re small, thin, and get the job done.
2007-10-18 Thu
2007-10-17 Wed
2007-10-16 Tue
AnySQL.net
DBA notes
Oracle & Starcraft
eagle's home
给你点color see see
AnySQL.net English
Oracle Scratchpad
Oracle Life
OracleDBA Blog
Photos from dbanotes
Chanel [K]
xzh2000的博客
Oracle Security Blog
ERN空间
Eddie Awad's Blog
MySQL Performance Blog
The Tom Kyte Blog
del.icio.us/fenng/oracle
AIXpert
O'Reilly Databases
Red Hat Magazine
DBASupport
DB2 Magazine 中文版
developerWorks : AIX 专区的文章,教程
Pythian Group Blog » Log Buffer
车东[Blog^2]
blue_prince
玉面飞龙的BLOG
此生 今世
人生就是如此
Orange Tiger 木匠 的 移民生活
生活帮-LifeBang
Hey!! Sky!
dba on unix
Oracle Notes Wiki
Welcome to brotherxiao's Home
柔嘉维则@life.oracle.eng
Fenng's shared items in Google Reader
jametong's shared items in Google Reader
缥缈游侠-logzgh
Tanel Poder's blog: Core IT for geeks and pros
DBA Tools
DBA is thinking
yangtingkun
NinGoo@Net
